]> git.mxchange.org Git - friendica.git/blobdiff - src/Module/Feed.php
Use rawContent for Special Options to avoid a protected options() method
[friendica.git] / src / Module / Feed.php
index cf3a0f7154fc23f0133351c9cf32fd7ee7a4e4b2..3a1246028b4224c0f306701b723a259d177c4c22 100644 (file)
@@ -1,10 +1,29 @@
 <?php
+/**
+ * @copyright Copyright (C) 2010-2022, the Friendica project
+ *
+ * @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;
 
 use Friendica\BaseModule;
 use Friendica\DI;
-use Friendica\Protocol\OStatus;
+use Friendica\Protocol\Feed as ProtocolFeed;
 
 /**
  * Provides public Atom feeds
@@ -22,22 +41,17 @@ use Friendica\Protocol\OStatus;
  */
 class Feed extends BaseModule
 {
-       public static function content(array $parameters = [])
+       protected function content(array $request = []): string
        {
                $a = DI::app();
 
                $last_update = $_GET['last_update'] ?? '';
                $nocache     = !empty($_GET['nocache']) && local_user();
 
-               // @TODO: Replace with parameter from router
-               if ($a->argc < 2) {
-                       throw new \Friendica\Network\HTTPException\BadRequestException();
-               }
-
                $type = null;
                // @TODO: Replace with parameter from router
-               if ($a->argc > 2) {
-                       $type = $a->argv[2];
+               if (DI::args()->getArgc() > 2) {
+                       $type = DI::args()->getArgv()[2];
                }
 
                switch ($type) {
@@ -53,10 +67,8 @@ class Feed extends BaseModule
                                $type = 'posts';
                }
 
-               // @TODO: Replace with parameter from router
-               $nickname = $a->argv[1];
                header("Content-type: application/atom+xml; charset=utf-8");
-               echo OStatus::feed($nickname, $last_update, 10, $type, $nocache, true);
+               echo ProtocolFeed::atom($this->parameters['nickname'], $last_update, 10, $type, $nocache, true);
                exit();
        }
 }