summaryrefslogtreecommitdiffstats
path: root/bin
diff options
context:
space:
mode:
authorBernhard Posselt <dev@bernhard-posselt.com>2016-01-21 22:35:24 +0100
committerBernhard Posselt <dev@bernhard-posselt.com>2016-01-21 22:35:24 +0100
commitbcb9ca95518126131a16fcde894fc8765e7ab010 (patch)
treebc1e0e8a5b99ffbf8cd4165c6872fd4468f547bd /bin
parent59daa89e4c82860d6b16b4e4bebab1eb8c302153 (diff)
more explore
Diffstat (limited to 'bin')
-rw-r--r--bin/tools/generate_explore.php65
1 files changed, 65 insertions, 0 deletions
diff --git a/bin/tools/generate_explore.php b/bin/tools/generate_explore.php
new file mode 100644
index 000000000..9fe1f4bbd
--- /dev/null
+++ b/bin/tools/generate_explore.php
@@ -0,0 +1,65 @@
+<?php
+/**
+ * ownCloud - News
+ *
+ * This file is licensed under the Affero General Public License version 3 or
+ * later. See the COPYING file.
+ *
+ * @author Bernhard Posselt <dev@bernhard-posselt.com>
+ * @copyright Bernhard Posselt 2016
+ */
+
+/**
+ * This is used for generating a JSON config section for a feed by executing:
+ * php -f generate_authors.php www.feed.com
+ */
+
+require_once __DIR__ . '/../../vendor/autoload.php';
+
+if (count($argv) < 2 || count($argv) > 3) {
+ print('Usage: php -f generate_explore http://path.com/feed [vote_count]');
+ print("\n");
+ exit();
+} elseif (count($argv) === 3) {
+ $votes = $argv[2];
+} else {
+ $votes = 100;
+}
+
+$url = $argv[1];
+
+try {
+ $config = new PicoFeed\Config\Config();
+ $reader = new PicoFeed\Reader\Reader($config);
+ $resource = $reader->discover($url);
+
+ $location = $resource->getUrl();
+ $content = $resource->getContent();
+ $encoding = $resource->getEncoding();
+
+ $parser = $reader->getParser($location, $content, $encoding);
+
+ $feed = $parser->execute();
+
+ $favicon = new PicoFeed\Reader\Favicon($config);
+
+ $result = [
+ "title" => $feed->getTitle(),
+ "favicon" => $favicon->find($url),
+ "url" => $feed->getSiteUrl(),
+ "feed" => $feed->getFeedUrl(),
+ "description" => $feed->getDescription(),
+ "votes" => $votes
+ ];
+
+ if ($feed->getLogo()) {
+ $result["image"] = $feed->getLogo();
+ }
+
+ print(json_encode($result, JSON_PRETTY_PRINT));
+
+} catch (\Exception $ex) {
+ print($ex->getMessage());
+}
+
+print("\n"); \ No newline at end of file