From cd49e9819bea35a4db05e3e76910b739898c2219 Mon Sep 17 00:00:00 2001 From: Alexandre Alapetite Date: Sun, 22 Mar 2020 16:31:20 +0100 Subject: New core-extensions to allow Docker volumes for third-party extensions (#2837) * New core-extensions to allow Docker volumes for third-party extensions #Fix https://github.com/FreshRSS/FreshRSS/issues/2650 Split our extensions directory into two: 1) Core extensions shipped with FreshRSS in ./lib/core-extensions/ 2) Third-party extensions modified by end-users in ./extensions/ which can easily be mounted as a Docker volume * Example of Docker Compose with extensions * Back-compatibility + fix array merge bug --- lib/core-extensions/README.md | 5 +++++ lib/core-extensions/Tumblr-GDPR/README.md | 4 ++++ lib/core-extensions/Tumblr-GDPR/extension.php | 13 +++++++++++++ lib/core-extensions/Tumblr-GDPR/metadata.json | 8 ++++++++ 4 files changed, 30 insertions(+) create mode 100644 lib/core-extensions/README.md create mode 100644 lib/core-extensions/Tumblr-GDPR/README.md create mode 100644 lib/core-extensions/Tumblr-GDPR/extension.php create mode 100644 lib/core-extensions/Tumblr-GDPR/metadata.json (limited to 'lib/core-extensions') diff --git a/lib/core-extensions/README.md b/lib/core-extensions/README.md new file mode 100644 index 000000000..7d48fbffd --- /dev/null +++ b/lib/core-extensions/README.md @@ -0,0 +1,5 @@ +# FreshRSS core extensions + +This directory contains some core extensions shipped with FreshRSS. + +For custom third-party extensions, use the `./FreshRSS/extensions/` directory instead. diff --git a/lib/core-extensions/Tumblr-GDPR/README.md b/lib/core-extensions/Tumblr-GDPR/README.md new file mode 100644 index 000000000..fc5e4dd50 --- /dev/null +++ b/lib/core-extensions/Tumblr-GDPR/README.md @@ -0,0 +1,4 @@ +# Tumblr-GDPR + +Needed for accessing [Tumblr](https://www.tumblr.com/) RSS feeds from the European Union: +bypass the [GPDR](https://en.wikipedia.org/wiki/General_Data_Protection_Regulation) check, implying consent. diff --git a/lib/core-extensions/Tumblr-GDPR/extension.php b/lib/core-extensions/Tumblr-GDPR/extension.php new file mode 100644 index 000000000..83bdf2189 --- /dev/null +++ b/lib/core-extensions/Tumblr-GDPR/extension.php @@ -0,0 +1,13 @@ +registerHook('simplepie_before_init', array('TumblrGdprExtension', 'curlHook')); + } + + public static function curlHook($simplePie, $feed) { + if (preg_match('#^https?://[a-zA-Z_0-9-]+.tumblr.com/#i', $feed->url())) { + $simplePie->set_useragent(FRESHRSS_USERAGENT . ' like Baiduspider'); + } + } +} diff --git a/lib/core-extensions/Tumblr-GDPR/metadata.json b/lib/core-extensions/Tumblr-GDPR/metadata.json new file mode 100644 index 000000000..b5c33787b --- /dev/null +++ b/lib/core-extensions/Tumblr-GDPR/metadata.json @@ -0,0 +1,8 @@ +{ + "name": "Tumblr-GDPR", + "author": "Alkarex", + "description": "Bypass Tumblr’ GPDR check (implying consent) for the European Union", + "version": 1.0, + "entrypoint": "TumblrGdpr", + "type": "system" +} -- cgit v1.2.3