Commit Graph

2244 Commits

Author SHA1 Message Date
Dag 69518e95c1
feat: add tags to codeberg bridge, fix #3177 (#3185)
* refactor

* feat: add tags to codeberg bridge, fix #3177
2022-12-08 21:21:17 +01:00
Julien Papasian 59d3011c86
Add Nautiljon bridge (#3181) 2022-12-08 20:48:10 +01:00
Eugene Molotov fdf380bccd
[VkBridge] Remove junky 'Show more' button (#3176) 2022-12-03 04:58:25 +01:00
Niehztog 7cf64daac9
Adds new Bridge for kitso.io episode feed (#3169)
* Adds new Bridge for kitso.io episode feed

* linter fixes, changed item titles

* more linter fixes

* fix bridge uri

* linter fixes

* added sorting of items by timestamp, added parameters to spicify show

* trying to fix linter again

* linter doesnt like tenary operators

* fix whitespace
2022-11-30 00:59:24 +01:00
Juan Jose Pablos ca667d731c
Update VproTegenlichtBridge.php (#3168)
Fix lint error
2022-11-29 15:19:16 +01:00
vincentvd1 9863204fa3
Feat: Add bridge for Vpro tegenlicht (#3162)
* [VproTegenlichtBridge.php] Created bridge

* [VproTegenlichtBridge.php] Added fetch exception
2022-11-25 20:39:56 +01:00
ORelio f53e0e4bee
[DarkReading] Convert pictures to plain images (#3158)
Convert <picture> to <img> element
2022-11-22 18:42:31 +01:00
ORelio d592e2cb15
[Core] Add html/convertLazyLoading (+ document stripRecursiveHTMLSection) (#3157)
* [core] Add html/convertLazyLoading($dom)

Looks for lazy-loading attributes such as 'data-src' and converts
them back to regular ones such as 'src', easier for RSS readers.
It also converts <picture> elements to plain <img> elements.

* [core] Document html/stripRecursiveHTMLSection()

Add documentation for that function (no code changes).

* [WordPressBridge] Use convertLazyLoading()

* [WordPressBridge] Unwrap image figures

<img> inside <figure> may not display on RSS readers.
This converts them back to <img>, without losing caption if present.

* [ZDNet] Convert lazy loading images

* [code] html/stripRecursiveHTMLSection: Fix typo
2022-11-20 12:41:59 +01:00
Dag 745a7ba122
fix: TheHackerNewsBridge (#3154) 2022-11-19 00:25:31 +01:00
Dag ebb82849e9
fix: notice in telegram (#3151)
* refactor: telegram

* fix: notice in telegram
2022-11-17 18:06:56 +01:00
Dag 3ee2c7f918
feat: new bridge RumbleBridge (#3150) 2022-11-17 18:06:35 +01:00
Dawid Wróbel b017f75767
[OLXBridge] new bridge (#2944)
* [OLXBridge] new bridge

* [OLXBridge] option to limit to shipping offers only

* [OLXBridge] set the feed title according to search query

* [OLXBridge] Fix PHP notices

* [OLXBridge] Remove trailing slash from the URL

* [OLXBridge] filter out the imposed additional search categories

* [OLXBridge] limit search to 'new' OLX platform variants

* [OLXBridge] Parse date, add ID, description

Deep-crawl all results. Penalty is low, as we were doing this for almost all of the results, anyway, yet it allows to obtain a unique ID, an uncomplicated Date string and a description.

Requires ext-intl for parsing the date according to locale.

* [OLXBridge] Parse date, add ID, description

Deep-crawl all results. Penalty is low, as we were doing this for almost all of the results, anyway, yet it allows to obtain a unique ID, an uncomplicated Date string and a description.

Requires ext-intl for parsing the date according to locale.

* [OLXBridge] Images are optional, handle appropriately

* [OLXBridge] handle the ID coming from sibling auto-moto portal

* [OLXBridge] handle the photos coming from sibling auto-moto portal

* [OLXBridge] use meta property to find img URL

* [OLXBridge] handle the date coming from sibling auto-moto portal

* [OLXBridge] use simplified syntax to retrieve content attribute value

* [OLXBridge] handle the description coming from sibling auto-moto portal

* [OLXBridge] fix phpcs complaints

* [OLXBridge] add categories

* [OLXBridge] handle the categories coming from sibling auto-moto portal

* [OLXBridge] hint image MIME type

OLX images have no obvious extension

* [OLXBridge] Fix content formatting

* [OLXBridge] URL is pattern-checked, so no need to check again

* [OLXBridge] return actual search query as URI
2022-11-17 17:57:05 +01:00
Dawid Wróbel 0726cce426
[AllegroBridge]: new bridge (#2942)
* [AllegroBridge]: new bridge

* [AllegroBridge] set feed name

* [AllegroBridge] fix notices

* [AllegroBridge] add images as attachments

* [AllegroBridge] cleanup code

* [AllegroBridge] add UID

* [AllegroBridge] add categories

* [AllegroBridge] fix pretty formatting

* [AllegroBridge] fix notice when offerExtraInfo is not found

* [AllegroBridge] add support for session cookie to prevent rate limiting

* [AllegroBridge] return inputted URL as URI

* [AllegroBridge] fix phpcs warning
2022-11-17 05:13:33 +01:00
Austin Huang e788e14baa
[MastodonBridge] Add support for various platforms (#3133)
* [MastodonBridge] Add support for various platforms

* [MastodonBridge] satisfy the lint
2022-11-16 18:05:01 +01:00
Dag dbab225fd2
fix: Call to a member function find() on bool (#3146)
* fix: Call to a member function find() on bool

Happens when defaultLinkTo() is passed the empty string.

* fix: prevent exception in defaultLinkTo() when passed the empty string

* refactor
2022-11-15 03:01:27 +01:00
Dag 95c199c2eb
fix: various php notices (#3145)
* fix: notice

* fix: Trying to get property content of non-object at bridges/PcGamerBridge.php line 36

* fix: better exception message

* fix: strpos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior
2022-11-15 00:30:51 +01:00
Joseph 734a5868b8
[FirefoxAddonsBridge] Fix removal of link redirects (#3144)
* [FirefoxAddonsBridge] Fix removable of link redirects

* Update FirefoxAddonsBridge.php
2022-11-14 22:56:12 +01:00
Paroleen 80f9871c9e
[AwwwardsBridge] Fix sites parsing (#3141)
* [AwwwardsBridge] Fix sites parsing

* [AwwwardsBridge] Fix phpcs issue
2022-11-11 18:33:28 +01:00
Dag b64f8f2a09
fix: various fixes (#3136) 2022-11-08 21:17:32 +01:00
quickwick 00ff0890bb
Add item dimensions (width x height) and source URL (if it exists in JSON) (#3135) 2022-11-08 18:43:51 +01:00
MarKoeh fe59cbabc9
[ARDAudiothekBridge] added bridge ARDAudiothek.de (#3132)
* [ARDAudiothekBridge] added bridge ARDAudiothek.de

ARD, the union of Germany's regional public-service broadcasters, operates a video and an audio streaming service. The video streaming service is ARDMediathek, for which a bridge already exists. The audio streaming service is ARDAudiothek. This commit adds initial support for ARDAudiothek. It currently supports turning shows to feeds.

* [ARDAudiothekBridge]  fixed code style

Sorry. Forgot spaces surrounding the concatenation symbol
2022-11-04 19:03:12 +01:00
Alexander aa14d4aafb
[SteamAppNewsBridge] new bridge (#3126)
* [SteamAppNewsBridge] new bridge

* [SteamAppNewsBridge] test fixes
2022-11-03 21:43:33 +01:00
Dag 75772f58e2
fix: review news was not properly extracted (#3131)
Fix #3129
2022-11-03 21:42:26 +01:00
John S Long 400e137673
[DiscogsBridge] Add optional image, if personal access token is configured (#3083) 2022-11-03 20:33:43 +01:00
ORelio 4520ab6835
[WordPressBridge] Improve content extraction (#3125)
* [WordPressBridge] Improve content extraction

 - Pick up currently unmaintained bridge
 - Allow Custom item limit and lower default limit from 20 to 10
 - Allow Custom content selector for blogs with non-standard templates (#2173)
 - Remove content selector made for one specific blog (#2173 - can be a custom selector now)
 - Add '.article-content' class in the set of default selectors
 - Improve lazy-loading conversion

* [WordPressBridge] Fix phpcs issues
2022-10-31 20:59:19 +01:00
Dag 7250940a05
fix: prtester css replacement (#3123) 2022-10-29 12:25:45 +02:00
Eugene Molotov 8779c09e89
[PikabuBridge] Remove html elements from feed item author (#3122) 2022-10-29 12:14:12 +02:00
Dag 23f8c81646
refactor/fix: css organization and error rendering (#3117)
* fix: php notice

* refactor/feat: merge HtmlFormat.css into style.css

Also improve ux of error rendering.

* fix: center-align footer text
2022-10-29 10:46:37 +02:00
joaomqc bef6fc5cbd
[SpotifyBridge] Add playlists feed (#3116)
* [SpotifyBridge] Add playlists feed

* fix formatting

* remove whitespace

* merge artist and playlist feeds

* fix lint errors
2022-10-27 20:02:01 +02:00
Dag 314d4c7a3f
fix: quickfix for heise, #3118 (#3119) 2022-10-27 19:59:45 +02:00
Dag 52af2ae34c
fix: php errors (notices) (#3115) 2022-10-26 00:47:45 +02:00
Dag cf7896aeef
fix: forever loop in golem (#3114) 2022-10-25 14:30:01 +02:00
Korytov Pavel 5b53e76477
[ScientificAmericanBridge] Add bridge (#3109)
* [ScientificAmericanBridge] Add bridge

* [ScientificAmericanBridge] Fix lint errors and timeout
2022-10-19 18:34:11 +02:00
Dag 58e321c915
fix: flickr (#3104) 2022-10-17 00:38:57 +02:00
Dag 37f1ab726b
fix: various bug fixes (#3102)
* fix: Undefined offset: 4

* fix: Trying to access array offset on value of type bool

* fix: Undefined variable: photo at bridges/TelegramBridge.php line 287

* fix: Trying to get property innertext of non-object at bridges/ZDNetBridge.php line 186

* fix: Undefined index: Category at bridges/UnraidCommunityApplicationsBridge.php line 42

* fix: Undefined index: fullUrl at bridges/EuronewsBridge.php line 61
2022-10-16 20:26:33 +02:00
Dag ffbc107687
Improve logging and error handling (#3059)
* refactor: logging and errror handling
2022-10-16 17:55:43 +02:00
Dag e21394d2d3
refactor: html format (#3062)
* refactor: html format

Fix a few small bugs too

* fix

* fix

* trigger build

* striptags instead of encode title
2022-10-16 12:03:57 +02:00
John S Long 78fa03238c
[MastodonBridge] Add support for GoToSocial (#3098)
* [MastodonBridge] Add support for GoToSocial

GoToSocial expects URLs in HTTP Signatures to include the query string; Mastodon
does not. To provide support for both types of ActivityPub services, define a
new parameter for signature types, defaulting to Mastodon's format.

This change also introduces auto-resolution of linked objects, which GoToSocial
uses instead of including content directly in a user's outbox.

* [MastodonBridge] Fix lint failure
2022-10-12 21:43:09 +02:00
Harvey Christian Pacleb 4d8e40e746
[HonkaiImpactSeaBridge] Add bridge (#3084) 2022-10-12 21:29:38 +02:00
floviolleau 3ea7d46837
[PanneauPocketBridge] enhancements (#2940)
* [PanneauPocketBridge] small fixes

* [PanneauPocketBridge] rename variable

* [PanneauPocketBridge] remove function call

Co-authored-by: Florent VIOLLEAU <florent.violleau@samsic.fr>
2022-10-12 21:10:58 +02:00
Korytov Pavel 56a8c521c2
[EconomistBridge] Fix bridge (#3095) 2022-10-08 20:05:17 +02:00
Christian Schabesberger 79f6ec5733
hide Nordbayern+ articles (#3094) 2022-10-08 15:34:26 +02:00
Dag e65fd7c822
fix: remove debug line (#3092) 2022-10-06 21:05:50 +02:00
Wouter Koch c4c2acab98
Add NOS Nieuws & Sport Bridge (#3069)
* Add NOS Nieuws & Sport Bridge

* Change classname to reflect filename (NOSBridge)
2022-10-05 19:41:21 +02:00
joshinat0r 8b7b32d516
[RedditBrige] Fix old feed URLs (#3087)
* flair filter

* syntax

* fix multi & user feeds

* '

* dont replace ,

* fix old reddit feeds
2022-10-05 19:35:02 +02:00
Dag 5d18852108
fix: more verbose error in fb (#3089) 2022-10-05 19:30:42 +02:00
Dag 44e5bf5338
docs: point to offical feed in qnap (#3088) 2022-10-05 19:21:02 +02:00
somini 8b91921a70
[AsahiShimbunAJWBridge]: Fix title extraction (#3085) 2022-10-04 21:23:49 +02:00
Nicolas Delsaux 1232de5744
Add new bridge RadioFranceBridge, fix #3077 (#3082)
As far as I understand, this supports all radio france sub-pages listing podcast and/or shows (tested with my two favorites shows, so not a very professionnal test).
We use here the data model provided by Radio France, which includes all data in an easily usable format.
2022-10-03 06:55:24 +02:00
John S Long 6b83bf25fd
[RoosterTeethBridge] Add episode description, optional episode image (#3080) 2022-10-02 19:38:33 +02:00
joshinat0r 30d964b356
[RedditBridge] Search for specific flairs (#3067)
* flair filter

* syntax

* fix multi & user feeds

* '

* dont replace ,
2022-10-02 07:34:20 +02:00
John S Long 8dcc21a871
[RoosterTeethBridge] Add new channels (#3076) 2022-10-02 06:48:07 +02:00
John S Long 7252a89914
[LWNprevBridge] Fix article content parsing (#3078) 2022-10-02 06:46:04 +02:00
Corentin Garcia 7c96334e3b
[GithubSearchBridge] Add programming language (#3074) 2022-10-01 08:42:50 +02:00
Corentin Garcia c4d95558af
[GenshinImpactBridge] fix missing articles (#3073) 2022-10-01 08:42:02 +02:00
Corentin Garcia 8ac5045963
[TheGuardianBridge] Fix missing article content (fix #3032) (#3072) 2022-10-01 08:41:19 +02:00
Corentin Garcia 4a21855e5c
[EliteDangerousGalnetBridge] Fix missing news (#3071) 2022-10-01 08:40:57 +02:00
Tobias Alexander Franke 1ffd9ee61a
[GoogleScholarBridge] Follow authors of scientific publications. (#3066)
* [GoogleScholarBridge] Follow authors of scientific publications.

* [GoogleScholarBridge] Fix linting.

* [GoogleScholarBridge] Fix more linting issues.

* [GoogleScholarBridge] Use author field in extracted page and drop publisher
2022-09-25 22:22:49 +02:00
Tobias Alexander Franke faf63269a1
[BinanceBridge] Adapt code to new JSON structure and fetch full article (#3065)
* [BinanceBridge] Add new bridge

* [BinanceBridge] TravisCI fixes

* [BinanceBridge] PR fixes

* [BinanceBridge] Fix for Binance blog: Pull JSON data instead of HTML

* [BinanceBridge] Fix double quotes

* [BinanceBridge] Remove announcements category (because of Cloudflare)

* [BinanceBridge] Simplify code to bare minimum

* [BinanceBridge] Adapt code to new JSON structure and fetch full article

* [BinanceBridge] Fix linting issues
2022-09-25 19:19:35 +02:00
Dag 8cc5e44be6
fix: use parlers new api (#3061) 2022-09-24 00:02:19 +02:00
Mynacol 9d871e8a45
[ZeitBridge] Add bridge for zeit.de (#3056)
* [ZeitBridge] Add bridge for zeit.de

New bridge expanding the feeds of zeit.de to full-text ones.
Circumvents cookie banners and Z+ premium article paywalls.

* [ZeitBridge] Formatting
2022-09-21 22:24:11 +02:00
Mynacol 8d8fe66aab
[HeiseBridge] Parser rewrite (#3054)
* [HeiseBridge] Parser rewrite

This rewrite is more readable and consistent than the previous one.

Additionally, this removes unwanted elements, largely recommendations
for other articles.
Furthermore, it increases the image quality by using the original
picture link instead of the compressed ones.

* [HeiseBridge] Formatting
2022-09-21 21:31:43 +02:00
Eugene Molotov 2db523a37a
[VkBridge] Handle empty posts before fixing image links (#3052) 2022-09-20 18:07:57 +02:00
Eugene Molotov 6cd8b90d28
[VkBridge] Follow changes on HTTP redirection (#3051)
When visiting canonical link like https://vk.com/club1,
VK returns redirection response to non-canical link,
which raises "Unexpected redirect location" exception.

This patch removes path check in order to handle this situation
2022-09-20 18:07:31 +02:00
Tobias Zulauf f660c16ca6
[TwitterV2Bridge] noexternallink option to remove external stuff from the content_html output (#3041)
* [TwitterV2Bridge] noexternallink option to remove external stuff from the content_html output

* Update bridges/TwitterV2Bridge.php

* Update bridges/TwitterV2Bridge.php
2022-09-20 18:07:18 +02:00
Eugene Molotov a12152e8a5
[VkBridge] Code cleanup (#3047)
- Remove .page_album_link patch, since VK already patched its renderer
- Remove non working code, that tries to get clean video links
2022-09-19 19:22:41 +02:00
Dag 55cc74c816
feat: new bridge pokemonnews (#3042)
* feat: new bridge pokemonnews

fix #3040

* fix
2022-09-17 01:29:40 +02:00
Eugene Molotov 11220ef373
[VkBridge] Photo fixes (#3039)
This commit fixes following issues:

- Photos from user profile wall started appearing as blured
- On posts with photo collection small thumbnails are shown
2022-09-15 22:17:10 +02:00
quickwick a1e229a7e1
feat: check EZTV mirrors for available site to query (#3036) 2022-09-15 17:47:57 +02:00
Dag 6f7be67a8c
fix: broken bridge abcnews (#3033)
Fix #3031
2022-09-13 19:00:51 +02:00
Dag 5a9336df12
fix: wrong accept header in mastodonbridge (#3025)
Fixes bug introduced by afcc38786e because of
the default Accept header which caused xml to be returned.

Fix #3024
2022-09-10 07:38:09 +02:00
Dag 94ae098ef5
fix: various fixes (#3023)
* improve twitch error message

* fix worldcosplay notice

* fix: add new video image to telegram

* fix: reuters

* fix: formula1

* twitter
2022-09-09 20:18:50 +02:00
Dag 6ac347d5ac
fix: add workaround for NYTBridge antibot (#3022) 2022-09-08 19:54:09 +02:00
Dag 5578a735d9
feat: allow more feeds in FeedMerge (#3021)
Fix #3011
2022-09-08 18:44:15 +02:00
Dag e63e3d072c
feat: new bridge QnapBridge (#3020) 2022-09-08 18:28:36 +02:00
Eugene Molotov 70ba6c5b53
[VkBridge] Manually handle redirects (#3017)
Some redirects are legit, some redirects lead to "Too many requests" page
2022-09-07 03:02:23 +02:00
Dag 0dab51e26f
fix: php errors (#3013)
* fix: php error in tiktok bridge

* fix: notice in craigslist

* fix: php notice in wordpress bridge

* feat: improve ux in telegram bridge
2022-09-06 00:14:20 +02:00
Eugene Molotov 8033a5f461
[VkBridge] Fix photo URI retrieving (#3010)
VK stopped filling JSON structure containing information for generating URI to full size photo
2022-09-05 23:41:41 +02:00
Dag a2c7865226
fix: exclude mastodon boosts when told to do so (#3007) 2022-09-05 05:58:18 +02:00
quickwick 36f64a3258
feat: add preview for external urls in twitterv2 (#3006)
Fix #2430
2022-09-05 05:31:36 +02:00
quickwick 8ffc002e53
fix: truncated retweet text in twitter bridge(#3004)
Fix #2988
2022-09-05 02:04:09 +02:00
Dag cca11174e1
fix: php error in ViceBridge (#3003)
Fixes Undefined variable: article at bridges/ViceBridge.php line 37
2022-09-04 22:58:58 +02:00
Dag 9d16e81e17
fix: php error PHP Notice: Undefined index: author (#3002) 2022-09-04 19:07:04 +02:00
Dag 57d5aa45f7
fix: php notice in eztvbridge (#2998)
* fix: php notice in eztvbridge

Fixes Undefined property: stdClass::$torrents

* lint
2022-09-04 04:35:21 +02:00
Dag b8f73618c1
fix: include playlist when processing soundcloud items (#2997) 2022-09-04 03:50:40 +02:00
Dag f40ed566be
fix: absolute urls for images in pixivbridge (#2993) 2022-09-02 20:35:17 +02:00
Korytov Pavel 1ca4dd69f7
[InstituteForTheStudyOfWarBridge] Do not put HTML tags into title (#2985) 2022-08-25 19:48:16 +02:00
Korytov Pavel c079dbb521
[InstituteForTheStudyOfWarBridge] Add bridge (#2984) 2022-08-25 19:22:19 +02:00
Eugene Molotov 43ad54dba0
[PikabuBridge] Skip sponsored posts (#2983)
* [PikabuBridge] Skip sponsored posts

Sponsored posts appear very rarely in html code.
But when they appear, they always have different url that results junk feed.

One of the example is [1]. After visiting it, you will be redirected to [2] that is marked as
"Партнёрский материал" in Russian, or "Sponsored post" in English.

[1] https://pikabu.ru/story/a_mla_posa_m_memu_seyla_otorathche_idomikhlenonoikhmyav_sseyla_otoratazoed__9388770?from=cpm
[2] https://pikabu.ru/story/kakim_dolzhen_byit_vash_noutbuk_9388770

* lint

Co-authored-by: Dag <me@dvikan.no>
2022-08-25 18:09:06 +02:00
Eugene Molotov fd0d5350be
[RutubeBridge] Include timestamp and author in feed (#2982) 2022-08-24 14:49:54 +02:00
Bocki edbafc6144
[Teefury] Fix occasional problem (#2974) 2022-08-20 21:11:27 +02:00
Christian Schabesberger 372eccd7b2
[Nordbayern] Update regions (#2966) 2022-08-13 19:41:05 +02:00
Bocki e99cbf21b2
[DailyShirts] Add daily shirt sites (#2962) 2022-08-12 14:51:38 +02:00
Miika Launiainen 08c1f55f4a
Created Hanime bridge (#2958)
* Created Hanime bridge

* Moved cover image from enclosures to content as dvikan suggested
2022-08-10 23:46:17 +02:00
Dag eef45d4e8d
fix: TypeError (0): setlocale(): Argument #1 ($category) must be of type int, string given (#2951)
This was upgraded from a warning to an error in php 8.
2022-08-06 22:46:49 +02:00
Dag 2bbce8ebef
refactor: general code base refactor (#2950)
* refactor

* fix: bug in previous refactor

* chore: exclude phpcompat sniff due to bug in phpcompat

* fix: do not leak absolute paths

* refactor/fix: batch extensions checking, fix DOS issue
2022-08-06 22:46:28 +02:00
Eugene Molotov 205f0a7239
[RutubeBridge] Fix regex for retreiving reduxState (#2955)
Before this commit regex captured window.reduxState value until first semicolon.
This is incorrect since it produces invalid json, if semicolon is
also somethere in the middle of stringified json.

After this commit regex will capture window.reduxState value until last semicolon.
2022-08-05 11:45:50 +02:00
Dag ecb486794b
refactor: use static values for cache scope
This fixes a future problem when code is placed under a namespace because `get_class($bridge)` will then return e.g. `RssBridge\Bridge\TwitterBridge` instead of the the current value `TwitterBridge`.

Also a bit refactoring of `Configuration.php`.
2022-08-02 15:03:54 +02:00
Loïc Fürhoff a0a0d5235b
Remove MAINTAINER (#2946) 2022-07-31 21:42:40 +02:00
Dag cd0ca7f645
fix: change default curl user agent (#2926) 2022-07-31 03:58:07 +02:00