Pārlūkot izejas kodu

Update topic model

Visman 5 gadi atpakaļ
vecāks
revīzija
0ebd8419a7
2 mainītis faili ar 10 papildinājumiem un 7 dzēšanām
  1. 6 1
      app/Models/Topic/Load.php
  2. 4 6
      app/Models/Topic/Manager.php

+ 6 - 1
app/Models/Topic/Load.php

@@ -4,6 +4,7 @@ namespace ForkBB\Models\Topic;
 
 use ForkBB\Models\Action;
 use ForkBB\Models\Topic\Model as Topic;
+use InvalidArgumentException;
 
 class Load extends Action
 {
@@ -14,8 +15,12 @@ class Load extends Action
      *
      * @return null|Topic
      */
-    public function load($id): ?Topic
+    public function load(int $id): ?Topic
     {
+        if ($id < 1) {
+            throw new InvalidArgumentException('Expected a positive topic id');
+        }
+
         $vars = [
             ':tid' => $id,
             ':uid' => $this->c->user->id,

+ 4 - 6
app/Models/Topic/Manager.php

@@ -4,7 +4,6 @@ namespace ForkBB\Models\Topic;
 
 use ForkBB\Models\ManagerModel;
 use ForkBB\Models\Topic\Model as Topic;
-use RuntimeException;
 
 class Manager extends ManagerModel
 {
@@ -29,14 +28,13 @@ class Manager extends ManagerModel
      */
     public function load(int $id): ?Topic
     {
-        $topic = $this->get($id);
-
-        if (! $topic instanceof Topic) {
+        if ($this->isset($id)) {
+            return $this->get($id);
+        } else {
             $topic = $this->Load->load($id);
             $this->set($id, $topic);
+            return $topic;
         }
-
-        return $topic;
     }
 
     /**