-<?php\r
-\r
-namespace Friendica\Module\Admin\Item;\r
-\r
-use Friendica\Core\L10n;\r
-use Friendica\Core\Renderer;\r
-use Friendica\Core\System;\r
-use Friendica\Model\Item;\r
-use Friendica\Module\BaseAdminModule;\r
-use Friendica\Util\Strings;\r
-\r
-class Delete extends BaseAdminModule\r
-{\r
- public static function post()\r
- {\r
- parent::post();\r
-\r
- if (empty($_POST['page_deleteitem_submit'])) {\r
- return;\r
- }\r
-\r
- parent::checkFormSecurityTokenRedirectOnError('/admin/item/delete', 'admin_deleteitem');\r
-\r
- if (!empty($_POST['page_deleteitem_submit'])) {\r
- $guid = trim(Strings::escapeTags($_POST['deleteitemguid']));\r
- // The GUID should not include a "/", so if there is one, we got an URL\r
- // and the last part of it is most likely the GUID.\r
- if (strpos($guid, '/')) {\r
- $guid = substr($guid, strrpos($guid, '/') + 1);\r
- }\r
- // Now that we have the GUID, drop those items, which will also delete the\r
- // associated threads.\r
- Item::delete(['guid' => $guid]);\r
- }\r
-\r
- info(L10n::t('Item marked for deletion.') . EOL);\r
- self::getApp()->internalRedirect('admin/item/delete');\r
- }\r
-\r
- public static function content()\r
- {\r
- parent::content();\r
-\r
- $t = Renderer::getMarkupTemplate('admin/item/delete.tpl');\r
-\r
- return Renderer::replaceMacros($t, [\r
- '$title' => L10n::t('Administration'),\r
- '$page' => L10n::t('Delete Item'),\r
- '$submit' => L10n::t('Delete this Item'),\r
- '$intro1' => L10n::t('On this page you can delete an item from your node. If the item is a top level posting, the entire thread will be deleted.'),\r
- '$intro2' => L10n::t('You need to know the GUID of the item. You can find it e.g. by looking at the display URL. The last part of http://example.com/display/123456 is the GUID, here 123456.'),\r
- '$deleteitemguid' => ['deleteitemguid', L10n::t("GUID"), '', L10n::t("The GUID of the item you want to delete."), 'required', 'autofocus'],\r
- '$baseurl' => System::baseUrl(),\r
- '$form_security_token' => parent::getFormSecurityToken("admin_deleteitem")\r
- ]);\r
- }\r
-}
\ No newline at end of file
+<?php
+/**
+ * @copyright Copyright (C) 2020, Friendica
+ *
+ * @license GNU AGPL version 3 or any later version
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <https://www.gnu.org/licenses/>.
+ *
+ */
+
+namespace Friendica\Module\Admin\Item;
+
+use Friendica\Core\Renderer;
+use Friendica\DI;
+use Friendica\Model\Item;
+use Friendica\Module\BaseAdmin;
+use Friendica\Util\Strings;
+
+class Delete extends BaseAdmin
+{
+ public static function post(array $parameters = [])
+ {
+ self::checkAdminAccess();
+
+ if (empty($_POST['page_deleteitem_submit'])) {
+ return;
+ }
+
+ self::checkFormSecurityTokenRedirectOnError('/admin/item/delete', 'admin_deleteitem');
+
+ if (!empty($_POST['page_deleteitem_submit'])) {
+ $guid = trim(Strings::escapeTags($_POST['deleteitemguid']));
+ // The GUID should not include a "/", so if there is one, we got an URL
+ // and the last part of it is most likely the GUID.
+ if (strpos($guid, '/')) {
+ $guid = substr($guid, strrpos($guid, '/') + 1);
+ }
+ // Now that we have the GUID, drop those items, which will also delete the
+ // associated threads.
+ Item::markForDeletion(['guid' => $guid]);
+ }
+
+ info(DI::l10n()->t('Item marked for deletion.'));
+ DI::baseUrl()->redirect('admin/item/delete');
+ }
+
+ public static function content(array $parameters = [])
+ {
+ parent::content($parameters);
+
+ $t = Renderer::getMarkupTemplate('admin/item/delete.tpl');
+
+ return Renderer::replaceMacros($t, [
+ '$title' => DI::l10n()->t('Administration'),
+ '$page' => DI::l10n()->t('Delete Item'),
+ '$submit' => DI::l10n()->t('Delete this Item'),
+ '$intro1' => DI::l10n()->t('On this page you can delete an item from your node. If the item is a top level posting, the entire thread will be deleted.'),
+ '$intro2' => DI::l10n()->t('You need to know the GUID of the item. You can find it e.g. by looking at the display URL. The last part of http://example.com/display/123456 is the GUID, here 123456.'),
+ '$deleteitemguid' => ['deleteitemguid', DI::l10n()->t("GUID"), '', DI::l10n()->t("The GUID of the item you want to delete."), DI::l10n()->t('Required'), 'autofocus'],
+ '$form_security_token' => self::getFormSecurityToken("admin_deleteitem")
+ ]);
+ }
+}