aboutsummaryrefslogtreecommitdiff
path: root/lib/classes
diff options
context:
space:
mode:
authorJan-Hendrik Willms <tleilax+studip@gmail.com>2023-03-03 20:05:20 +0000
committerJan-Hendrik Willms <tleilax+studip@gmail.com>2023-03-03 20:05:20 +0000
commit430074ffa822c2456cabbbe77413fd2d615db7d4 (patch)
tree69fa7661f44e0e202641d872b2074958c48d5599 /lib/classes
parent989e9fb694954a976d80fbfc67e37f417cf25ffa (diff)
adjustments due to phpstan report, fixes #2257
Closes #2257 Merge request studip/studip!1490
Diffstat (limited to 'lib/classes')
-rw-r--r--lib/classes/ContentBar.php7
-rw-r--r--lib/classes/CoursewarePDFCertificate.php7
-rw-r--r--lib/classes/JsonApi/Routes/Courseware/UnitsCopy.php10
-rw-r--r--lib/classes/JsonApi/Routes/Courseware/UnitsCreate.php2
-rw-r--r--lib/classes/JsonApi/Routes/Courseware/UnitsUpdate.php2
-rw-r--r--lib/classes/JsonApi/Routes/Files/FileRefsContentShow.php2
-rw-r--r--lib/classes/Virusscanner.php7
7 files changed, 26 insertions, 11 deletions
diff --git a/lib/classes/ContentBar.php b/lib/classes/ContentBar.php
index 53b3dfc..0e6a664 100644
--- a/lib/classes/ContentBar.php
+++ b/lib/classes/ContentBar.php
@@ -36,18 +36,19 @@ class ContentBar
public static function get(): ContentBar
{
if (static::$instance === null) {
- static::$instance = new static;
+ static::$instance = new static();
}
return static::$instance;
}
/**
* Private constructor to ensure that the singleton Get() method is always
- * used.
+ * used. The constructor is finalized so that the call to get() will never
+ * fail.
*
* @see ContentBar::get
*/
- protected function __construct()
+ protected final function __construct()
{
}
diff --git a/lib/classes/CoursewarePDFCertificate.php b/lib/classes/CoursewarePDFCertificate.php
index e3ef02f..ca6e704 100644
--- a/lib/classes/CoursewarePDFCertificate.php
+++ b/lib/classes/CoursewarePDFCertificate.php
@@ -2,13 +2,12 @@
class CoursewarePDFCertificate extends TCPDF
{
+ protected $background;
+
public function __construct($background = false, $orientation = 'P', $unit = 'mm', $format = 'A4', $unicode = true, $encoding = 'UTF-8')
{
- $this->config = Config::get();
- if ($this->config->getValue('LOAD_EXTERNAL_MEDIA') === 'proxy') {
- $this->media_proxy = new MediaProxy();
- }
parent::__construct($orientation, $unit, $format, $unicode, $encoding, false);
+
if ($background) {
$fileRef = FileRef::find($background);
$this->background = $fileRef->file->getPath();
diff --git a/lib/classes/JsonApi/Routes/Courseware/UnitsCopy.php b/lib/classes/JsonApi/Routes/Courseware/UnitsCopy.php
index 5365459..61ffa95 100644
--- a/lib/classes/JsonApi/Routes/Courseware/UnitsCopy.php
+++ b/lib/classes/JsonApi/Routes/Courseware/UnitsCopy.php
@@ -32,7 +32,13 @@ class UnitsCopy extends NonJsonApiController
$rangeType = $data['rangeType'];
$modified = $data['modified'];
- if (!Authority::canCreateUnit($user)) {
+ try {
+ $range = \RangeFactory::createRange($rangeType, $rangeId);
+ } catch (\Exception $e) {
+ throw new RecordNotFoundException('Range could not be found');
+ }
+
+ if (!Authority::canCreateUnit($user, $range)) {
throw new AuthorizationFailedException();
}
@@ -43,4 +49,4 @@ class UnitsCopy extends NonJsonApiController
return $response;
}
-} \ No newline at end of file
+}
diff --git a/lib/classes/JsonApi/Routes/Courseware/UnitsCreate.php b/lib/classes/JsonApi/Routes/Courseware/UnitsCreate.php
index c109619..f8fb17b 100644
--- a/lib/classes/JsonApi/Routes/Courseware/UnitsCreate.php
+++ b/lib/classes/JsonApi/Routes/Courseware/UnitsCreate.php
@@ -3,12 +3,12 @@
namespace JsonApi\Routes\Courseware;
use JsonApi\Errors\AuthorizationFailedException;
+use JsonApi\Errors\RecordNotFoundException;
use JsonApi\JsonApiController;
use JsonApi\Routes\ValidationTrait;
use JsonApi\Schemas\Courseware\Unit as UnitSchema;
use Psr\Http\Message\ResponseInterface as Response;
use Psr\Http\Message\ServerRequestInterface as Request;
-use Studip\Activity\Activity;
/**
* Create a block in a container.
diff --git a/lib/classes/JsonApi/Routes/Courseware/UnitsUpdate.php b/lib/classes/JsonApi/Routes/Courseware/UnitsUpdate.php
index 53fccd3..762fb04 100644
--- a/lib/classes/JsonApi/Routes/Courseware/UnitsUpdate.php
+++ b/lib/classes/JsonApi/Routes/Courseware/UnitsUpdate.php
@@ -6,6 +6,7 @@ use Courseware\Unit;
use JsonApi\Errors\AuthorizationFailedException;
use JsonApi\Errors\RecordNotFoundException;
use JsonApi\JsonApiController;
+use JsonApi\Routes\TimestampTrait;
use JsonApi\Routes\ValidationTrait;
use JsonApi\Schemas\Courseware\Unit as UnitSchema;
use Psr\Http\Message\ResponseInterface as Response;
@@ -17,6 +18,7 @@ use Psr\Http\Message\ServerRequestInterface as Request;
class UnitsUpdate extends JsonApiController
{
use EditBlockAwareTrait;
+ use TimestampTrait;
use ValidationTrait;
/**
diff --git a/lib/classes/JsonApi/Routes/Files/FileRefsContentShow.php b/lib/classes/JsonApi/Routes/Files/FileRefsContentShow.php
index b2b67ce..e2d19c4 100644
--- a/lib/classes/JsonApi/Routes/Files/FileRefsContentShow.php
+++ b/lib/classes/JsonApi/Routes/Files/FileRefsContentShow.php
@@ -114,7 +114,7 @@ class FileRefsContentShow extends NonJsonApiController
$fileRef->incrementDownloadCounter();
- $stream = Psr7\stream_for(fopen($pathFile, 'rb'));
+ $stream = Psr7\Utils::streamFor(fopen($pathFile, 'rb'));
return $response->withBody($stream);
}
diff --git a/lib/classes/Virusscanner.php b/lib/classes/Virusscanner.php
index 628fdba..077e3e2 100644
--- a/lib/classes/Virusscanner.php
+++ b/lib/classes/Virusscanner.php
@@ -89,6 +89,13 @@ class Virusscanner
}
/**
+ * Finalized constructor so that the instantition in scan() will never fail.
+ */
+ protected final function __construct()
+ {
+ }
+
+ /**
* Establishes a connection to virus scanner via socket or TCP, depending on Stud.IP configuration.
*
* @return resource|null