瀏覽代碼

Add delete for bbcode

Visman 4 年之前
父節點
當前提交
a56a8337f1

+ 29 - 0
app/Models/BBCodeList/Delete.php

@@ -0,0 +1,29 @@
+<?php
+
+namespace ForkBB\Models\BBCodeList;
+
+use ForkBB\Models\Method;
+use ForkBB\Models\BBCodeList\Model as BBCodeList;
+use PDO;
+
+class Delete extends Method
+{
+    /**
+     * Удаляет bbcode по id
+     */
+    public function delete(int $id): BBCodeList
+    {
+        $vars = [
+            ':id' => $id,
+        ];
+        $query = 'DELETE
+            FROM ::bbcode
+            WHERE id=?i:id AND bb_delete=1';
+
+        $this->c->DB->exec($query, $vars);
+
+        $this->model->reset();
+
+        return $this->model;
+    }
+}

+ 14 - 0
app/Models/Pages/Admin/Parser/BBCode.php

@@ -204,4 +204,18 @@ class BBCode extends Parser
             return 1;
         }
     }
+
+    /**
+     * Удаляет bbcode
+     */
+    public function delete(array $args, string $method): Page
+    {
+        if (! $this->c->Csrf->verify($args['token'], 'AdminBBCodeDelete', $args)) {
+            return $this->c->Message->message('Bad token');
+        }
+
+        $this->c->bbcode->delete((int) $args['id']);
+
+        return $this->c->Redirect->page('AdminBBCode')->message('BBCode deleted redirect');
+    }
 }

+ 3 - 0
app/lang/en/admin_parser.po

@@ -152,3 +152,6 @@ msgstr "In messages"
 
 msgid "BBCode sig label"
 msgstr "In signatures"
+
+msgid "BBCode deleted redirect"
+msgstr "BBCode deleted."

+ 3 - 0
app/lang/ru/admin_parser.po

@@ -152,3 +152,6 @@ msgstr "В сообщениях"
 
 msgid "BBCode sig label"
 msgstr "В подписях"
+
+msgid "BBCode deleted redirect"
+msgstr "BB-код удален."