* [Core] New feature : User Interface to "Detect" Feed from an URL
Detect Action has been expanded to support returning a Feed in a JSON
format instead of a Redirect. Existing usage of the Detect action will
keep working as usual.
Frontpage template has now a section to display the Feed detection
result, and a button to start the Feed Detection.
A new JS file contains the necessary JS (Ajax and Event management) to
fill the Feed Detection section.
* Coding policy fixes
* [Core] New feature : User Interface to "Detect" Feed from an URL
- Switch from old school XMLHttpRequest to fetch
- Enhance UX of search results
- Revert to it's original content
- Switch to a new Action : FindfeedAction.php
- Switch to template literals instead of string concatenation
- FindFeed action could retrun multiple feeds
- Results are sent with an absolute URL
- Switch to Json::encode() helper function
* [Core] New feature : User Interface to "Detect" Feed from an URL
- Move specific JS code to rss-bridge.js
- Change HTML tag for the button to have a consistant style with th rest
of the page
* [Core] New feature : User Interface to "Detect" Feed from an URL
- If no context is sent, assume there is only one unnamed context
- Find parameter name in global and currect context
* fix
* remove typo
---------
Co-authored-by: Dag <me@dvikan.no>
* bridges: add context to detectParameters
Some bridges did not return the context parameter but they used it in
the parameters
* bridges: add context to detectParameters
Fix test for InstagramBridge
* [SitemapBridge] Add SitemapBridge
This bridge is a variant of CssSelectorBridge.
Instead of retrieving article list from home page,
retrieves article list from SEO sitemap.xml.
Requires CssSelectorBridge to be installed.
* [SitemapBridge] Code linting
* [core] support xhtml content type in FeedExpander
* [FilterBridge] change defaultValue to exampleValue
* [core] support content with child elements in FeedExpander
* added the option for a sessioncookie
with a valid cookie you can get full heise+ (paywall) articles
* formating
* lint
---------
Co-authored-by: Dag <me@dvikan.no>
When using parent element as URL selector:
* If no <a> inside some elements, ignore them
* If no <a> inside ALL elements, report an error
Fixes#3573 #issuecomment-1656943318
* [core] replace everything except bridge name to get a valid whitelist.txt
* [core] do not use hard code repository name to improve working with forks
* [core] trim bridge names from whitelist.txt to reduce chance of failure
* [CssSelectorBridge] Improvements (#3537)
* Improve parameter documentation / add tooltips
* Allow extracting content from home page instead of article page
* Keep titles from home page when every page <title> is the same
* [CssSelectorBridge] Code linting
* [CssSelectorBridge] Code linting (2)
* [CssSelectorBridge] Code linting (3)
— fix cookie pattern
– use data analytics attributes wherever possible to avoid relying on obfuscated class names
— add support for promoted offers
— include sponsored and promoted offers by default
— some additional refactoring
serialize() can return output with null bytes and other
non-text data. The prior behavior truncated data
which later results in unserialize() errors.
This happens when e.g. caching an object with a private field
or when caching e.g. a JPEG file (starts with 0xFFD8FFE1)
Fixes errors such as e.g.:
unserialize(): Error at offset 20 of 24 bytes at caches/SQLiteCache.php line 51