Commit Graph

1882 Commits (37d46411c77bda2b1823f7d230b06e36b7125a8d)

Author SHA1 Message Date
Andrew Dolgov 9fdeb58fd3 check a few more php8 warnings 3 years ago
Andrew Dolgov a544123b59 fix clean() for arrays and user plugin list 3 years ago
Andrew Dolgov 6e774a58fe more php8 fixes mostly related to login 3 years ago
Andrew Dolgov 403dca154c initial WIP for php8; bump php version requirement to 7.0 3 years ago
Andrew Dolgov da0ad82c24 Archive cleanup:
- remove code to manually archive/unarchive articles
- remove ttrss_archived_feeds/orig_feed_id handling - the whole thing was implemented for
this data to be kept indefinitely; it doesn't make a lot of sense to deal with this stuff
now that it is expired after one month anyway (same reasons as feed browser being removed - privacy)
- remove "originally from"-related stuff because of the above
- also remove unused remaining frontend/backend code related to feed browser (rip)
4 years ago
Andrew Dolgov 25520e9784 Select... dropdown: replace dijit Select with DropDownButton, simplify layout
PluginHost: add HOOK_HEADLINE_TOOLBAR_SELECT_MENU_ITEM
Headlines.onActionChanged: removed
4 years ago
Andrew Dolgov bc0d50e892 remove show as feed from Select dropdown in main toolbar 4 years ago
Andrew Dolgov b2993bcd30 remove menu options to manually un/archive articles 4 years ago
Andrew Dolgov ee4b7bebe8 pluginhost: load_data: check schema last 4 years ago
Andrew Dolgov 40f38fc87f pluginhost: load plugin data automatically (also marks load_data method as private) 4 years ago
Andrew Dolgov f67f0f864b HOOK_ARTICLE_EXPORT_FEED: also pass owner_uid 4 years ago
JustAMacUser fadf4dec96 Include tags for HOOK_ARTICLE_EXPORT_FEED. 4 years ago
Andrew Dolgov 33a5ecd2ce feed editor: show purge interval correctly if FORCE_ARTICLE_PURGE is set 4 years ago
Andrew Dolgov 4e3ef7a4dd get_user_ip: remove REMOTEADDR for the time being 4 years ago
Andrew Dolgov a8302fb253 use X-Real-IP headers if possible while authenticating 4 years ago
Andrew Dolgov 8cc07bc8bd event log: add severity filtering 4 years ago
Andrew Dolgov 6da576dbe4 BLACKLISTED_TAGS: use textarea for editing; normalize value when saving 4 years ago
Andrew Dolgov f59c567831 update_rss_feed: fix BLACKLISTED_TAGS not working properly, simplify tag-related code 4 years ago
Andrew Dolgov 5f733604f0 purge_feed: limit debugging to LOG_VERBOSE 4 years ago
wn_ d2db58de4f Switch from 'vsprintf' to 'sprintf' in another place. 4 years ago
fox ef7e679363 Merge branch 'feature/php8' of wn/tt-rss into master 4 years ago
Andrew Dolgov b4b2ba99ef purge_feed: shorten one log message 4 years ago
Andrew Dolgov f05f9b4252 purge_feed: add more debugging output 4 years ago
Andrew Dolgov 9b7338e807 feed editor: properly show global purging interval as disabled 4 years ago
Andrew Dolgov 83962a8561 feed debugger: allow setting log level to LOG_EXTENDED 4 years ago
wn 62da307ef1 Use correct 'sprintf' function and other minor fixes in Pref_Feeds. 4 years ago
wn a1f8d6941b Remove duplicate block in 'classes/pref/filters.php'.
Also a minor tweak to getting the search filter.
4 years ago
wn 8c4ca7c8ef Fix some 'isset' checks in 'classes/pref/prefs.php'. 4 years ago
wn 95d0cb4953 Handle potential absence of a URL path in UrlHelper. 4 years ago
Andrew Dolgov 71c8d8d365 queryFeedHeadlines:
- there should be no need for DISTINCT query when checking for first id
 - fix DISTINCT query part being undefined when browsing by tags
 - add query debugging for tags
4 years ago
Andrew Dolgov 7608f3d7b0 Merge branch 'master' of git.fakecake.org:tt-rss 4 years ago
Andrew Dolgov 2edfcbbd85 get_article_image: add support for ARTICLE_KIND_ALBUM 4 years ago
Andrew Dolgov 85b788709a setArticleTags: prevent duplicate tags being assigned if called twice
editTagsDlg: prevent dialot from being submitted twice
normalize_categories: filter out empty values that failed validation
4 years ago
Andrew Dolgov d06cc8267b queryFeedHeadlines: bring back DISTINCT for a limited set of columns 4 years ago
Andrew Dolgov e40b79ab33 get_article_image: return basic kind to which flavor image belongs 4 years ago
Andrew Dolgov db3fcb861b viewfeed: reintroduce timestamps, fix debugging, fix some indents 4 years ago
Andrew Dolgov 20af8d5caf queryFeedHeadlines: properly define for a few more variables 4 years ago
Andrew Dolgov 1580748c17 queryFeedHeadlines: make sure feed_check_qpart is always defined 4 years ago
Andrew Dolgov 904d5f7a3b queryFeedHeadlines: no longer select DISTINCT headlines for performance reasons (this also removes _HEADLINES_QUERY_NO_DISTINCT) 4 years ago
Andrew Dolgov e9673eb13d experimental: add optional _HEADLINES_QUERY_NO_DISTINCT to disable DISTINCT keyword in queryFeedHeadlines query 4 years ago
Andrew Dolgov 8089fcc762 feed editor: also show default value for purge interval 4 years ago
Andrew Dolgov d48460969d feed editor: show actual value of default update interval 4 years ago
Andrew Dolgov d1ee30d1ba prevent horizontal scrolling in filter editor dialog if rules are very long 4 years ago
Andrew Dolgov 328d7b55c8 URLHelper: fix E_DEPRECATED error related to idn_to_ascii() 4 years ago
John Aylward 01c0d4bbfd allow audio to be sent to client from the cache 4 years ago
JustAMacUser f782ee46ad Fix incorrect parenthesis placement in `count()`. 4 years ago
Andrew Dolgov f1fd5e8db1 mark feed as having an error if update task fails (and no last error is already stored for this feed) 4 years ago
Andrew Dolgov 935f163919 api: catchupfeed: allow passing 'mode' (optional), bump api version 4 years ago
Andrew Dolgov 4ea407f613 when auto disabling feeds based on DAEMON_UNSUCCESSFUL_DAYS_LIMIT only consider feeds with recent attempts to update (to prevent clashes with not recently logged users, etc) 4 years ago
Andrew Dolgov 38a7a1da88 hide uninteresting errors in several DOMDocument->loadHTML() invocations 4 years ago
Andrew Dolgov 8a02a728c8 add DAEMON_UNSUCCESSFUL_DAYS_LIMIT tunable (defaults to 30 days) 4 years ago
Andrew Dolgov e641547d37 set ttrss_feeds.last_successful_update as needed 4 years ago
Andrew Dolgov 15e8ee3471 housekeeping: add task to cleanup orphan feed icons 4 years ago
Andrew Dolgov 82bc740363 Logger::log - allow specifying errno
bump severity of PDO exception log messages to E_USER_WARNING
4 years ago
Andrew Dolgov 3b17c45887 exclude E_USER_NOTICE from recent events icon 4 years ago
Andrew Dolgov 23d20847a3 update_rss_feed: fallback to previous method if passthru() is not available 4 years ago
Andrew Dolgov c70e26db31 validate url: feed urlencoded() URL to filter_var() only 4 years ago
Andrew Dolgov 7c8bed0524 accept -1 as a valid exit code for per-feed update processes 4 years ago
Andrew Dolgov 335dcd3bf9 don't mention last_updated in non-zero failure error message because that's not what it means 4 years ago
Andrew Dolgov 3534b8dfa7 improve logging for per-feed update task failures 4 years ago
Andrew Dolgov 74cd60d7cc update_rss_feed: don't return as if failed on http 304 4 years ago
Andrew Dolgov d4d0e976dc update-feed: exit with non-zero exit code if update_rss_feed() failed
daemon: log if per-feed update task terminated with non-zero exit code
4 years ago
Andrew Dolgov 0761533d0a lock per-feed update processes based on feed ID to reduce possibilty
of concurrent updates
4 years ago
Andrew Dolgov 528b387563 update individual feed in a separate process to prevent PHP fatal errors
(for example, OOM) from stopping the entire batch
this should also slightly increase memory budget for update processes
4 years ago
Andrew Dolgov e993d4feb2 Merge branch 'master' of git.fakecake.org:tt-rss 4 years ago
Andrew Dolgov 71e9f70b8a search_to_sql: use per-user default language instead of hardcoded english if isn't specified explicitly 4 years ago
Andrew Dolgov d0ed7890df prev: add missing class 4 years ago
Andrew Dolgov 215f388992 move timestamp-related stuff to a separate class 4 years ago
Andrew Dolgov 05744bb474 fix updater never scheduling feeds for update if they never been updated before while having default update interval set 4 years ago
Andrew Dolgov 8fb2baecdc another hack for validation of URLs with invalid characters 4 years ago
Andrew Dolgov a897c4165b validate URLs: convert IDN to punycode before passing URL to filter_var() 4 years ago
Andrew Dolgov 6811d0bde2 use self:: in some places to invoke static methods from the same class 4 years ago
Andrew Dolgov b5710baf34 - don't fail on non-ascii characters when validating URLs
- fix IDN hostnames not being converted properly
4 years ago
Andrew Dolgov ab6aa0ad3e fix previous re: resolve_redirects 4 years ago
Andrew Dolgov 74568df4ff remove a lot of stuff from global context (functions.php), add a few helper classes instead 4 years ago
Andrew Dolgov 3dd4169b5f clarify some URL validation-related error messages 4 years ago
Andrew Dolgov 4785f21316 update_rss_feed: log effective URL after fetching
validate_url: treat scheme as case-insensitive
4 years ago
Andrew Dolgov 05ef9aac2f update URL pointing to version.json 4 years ago
Andrew Dolgov 03a337a660 add basic safe mode which doesn't load any user plugins 4 years ago
Andrew Dolgov a4525d31b2 replace FALSE with false so that static analyzer shuts up about it 4 years ago
Andrew Dolgov afa0023c51 don't try to update manually disabled feeds even if they haven't been updated before or are marked for a manual update 4 years ago
Andrew Dolgov 37f41a5246 forgotpass: use type strict comparison for reset token 4 years ago
Andrew Dolgov e3adacc588 fix several cases of Db class being invoked as wrong name (as DB) 4 years ago
Andrew Dolgov 89d53a7f49 fix typo in previous 4 years ago
Andrew Dolgov 1f79d614c4 fix OTP QR code not displayed because of CSRF token passed as a query
parameter
use type-strict comparison when validating CSRF token on the backend
4 years ago
Andrew Dolgov 9d3c794983 subscribe: allow pre-filling feed URL if passed via query string 4 years ago
Andrew Dolgov 33fdde249e pass CSRF token to opml import and feed icon replace dialogs 4 years ago
Andrew Dolgov 42b5564d1e editarticletags: load dialog via XHR 4 years ago
Andrew Dolgov 0706a328a4 handler: default base csrf_ignore() to false 4 years ago
Andrew Dolgov 0a142912d3 backend handler: require CSRF, remove obsolete code 4 years ago
Andrew Dolgov 154417d80b public/logout: require valid CSRF token 4 years ago
Andrew Dolgov cbcb10a272 Feeds: load quickaddfeed and search dialogs via XHR w/ CSRF protection 4 years ago
Andrew Dolgov 8080c525fd - backend: require CSRF token to be passed via POST
- do not leak CSRF token via GET request in feed debugger
- rework Article/redirect to use POST
4 years ago
Andrew Dolgov e670ac2ee5 require CSRF token for Article/redirect 4 years ago
Andrew Dolgov 7e50c6c4b5 - enable CSRF support earlier
- remove rpc/sanityCheck from CSRF-excluded calls
4 years ago
Andrew Dolgov 79f102c25d af_proxy_http: never print received data directly, always redirect to cached_url
cache/getUrl: basename() passed filename just in case
4 years ago
Andrew Dolgov 4a074111b5 user preferences: forbid < and > characters when changing passwords (were silently stripped on save because of clean()) 4 years ago
Andrew Dolgov da98ba662e public/subscribe: require valid CSRF token when validating the form 4 years ago
Andrew Dolgov c3d14e1fa5 - fix multiple vulnerabilities in af_proxy_http
- fix vulnerability in rewrite_relative_url() which prevented some URLs from being properly absolutized
- fetch_file_contents: validate all URLs before requesting them
- validate URLs: explicitly whitelist http and https scheme, forbid everything else
- DiskCache/cached_url: only serve whitelisted content types (images, video)
- simplify filename/URL handling code, remove and consolidate some less-used functions
4 years ago
Andrew Dolgov a922b3cc6d order_to_override_query: allow HOOK_HEADLINES_CUSTOM_SORT_OVERRIDE plugins to override built-in sorting 4 years ago
Andrew Dolgov 67f02e2aa7 properly return counters for labels with zero assigned articles
refs https://community.tt-rss.org/t/label-counter-doesnt-update-when-count-goes-down-to-zero/3766
4 years ago
Rodney Stromlund 88ced02622 Silence php 7.2 error message generated in `session_set_cookie_params`. 4 years ago
Andrew Dolgov ddf9227dc4 pluginhost: allow overriding default sort modes via HOOK_HEADLINES_CUSTOM_SORT_MAP etc 4 years ago
Andrew Dolgov dfa65e9374 move order_by to SQL override logic into a separate function 4 years ago
Andrew Dolgov 48be005774 instead of taking batch timestamp and score (?) into account, make oldest first sorting work consistently with newest first - i.e. rely on feed-provided timestamp 4 years ago
Andrew Dolgov 05a47e5cf4 OPML: export/import per-feed purge interval 4 years ago
Paco Esteban c4ee0e25a1 more int/string type mismatches on getCategories 4 years ago
Paco Esteban 3da618e0ea make sure all ints are casted (to int) on getCategories 4 years ago
fox 68b78ecd3d Merge branch 'bugfix/invalid-opml' of wn/tt-rss into master 4 years ago
Andrew Dolgov b6372a846d when exporting OPML via web UI, add user login to the filename 4 years ago
Andrew Dolgov fa653f5a43 prefs: show disabled filters properly on mysql 4 years ago
Andrew Dolgov 2996a3942f prefs: show root of filter tree as enabled so it's not grayed out 4 years ago
wn_ 614d3ac1bf Properly check if OPML file was loaded during import. 4 years ago
Andrew Dolgov c352e872e9 core: pass found enclosures to HOOK_ARTICLE_FILTER
af_redditimgur: remove enclosures if we found something to embed because it's going to be a low-res thumbnail
4 years ago
Andrew Dolgov 6eb94f1e13 better support for image srcset attributes as discussed in https://community.tt-rss.org/t/problem-with-img-srcset/3519 4 years ago
Andrew Dolgov d01ad09800 eslint-related fixes; move a few things from global context to App 4 years ago
Andrew Dolgov c8cc845d5b when removing favicon, reset its auto-refresh timer 4 years ago
Andrew Dolgov 06d2c65193 calculate_article_hash: don't die() on previous, woops 4 years ago
Andrew Dolgov 3a142cbf58 calculate_article_hash: ignore some useless or read-only fields (i.e. GUID) when calculating hash 4 years ago
Andrew Dolgov cd1f3cb8cc * store UID in article hashed GUID separately so it could be migrated cleanly to a different instance
* store resulting GUID as a JSON object so it could be extended easier if needed
4 years ago
Andrew Dolgov 7a2e9bef77 add --opml-export to update.php 4 years ago
Andrew Dolgov c275a0cd33 DiskCache: append fake file extension when sending cached files based on mime type to make saving files easier 4 years ago
Andrew Dolgov 3a4b9249a9 DiskCache: properly deal with srcset attributes 4 years ago
Andrew Dolgov 4a00f96733 remove unneeded var_dump() 4 years ago
Andrew Dolgov 6573541873 * add HOOK_ENCLOSURE_IMPORTED
* pass feed id to HOOK_FEED_PARSED
4 years ago
Andrew Dolgov 44b1f0fcc0 search: add support for label:XXX search keyword
Labels: enforce case-insensitive lookups when creating/looking for labels
4 years ago
Andrew Dolgov 1f2a721905 allow overriding built-in templates via templates.local 4 years ago
lllusion3418 ec1b0befc7 add support for video[@src] in media cache
it's a valid alternative to a source[@src] child element:
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/video
4 years ago
lllusion3418 cdde23b4dc actually download <video> posters to media cache
video[@poster] is already supported in the rewriting logic but never
actually downloaded
4 years ago
lllusion3418 b4287a2e98 fix url rewriting for videos with poster and src
if a poster attribute was present only that would have been rewritten
and the (arguably more important) src attribute would be left as-is
4 years ago
Andrew Dolgov 208e02c47d PluginHost/save_data: use separate PDO connection to prevent issues with nested transactions 4 years ago
Andrew Dolgov bcbc5ccc78 batchSubscribe: use validationtextarea 4 years ago
Andrew Dolgov f24ece85a6 add validationtextarea control, use it for filter match editor 4 years ago
Andrew Dolgov 8645f36c5b filter test dialog: pass contents via xhr POST 4 years ago
Andrew Dolgov bdb1e475e7 external subscribe dialog: support dark theme 4 years ago
Andrew Dolgov b2876f6c72 share anything dialog: support dark theme 4 years ago
Andrew Dolgov 4ab3854aed don't generate default.css, replace with themes/light.css as a default root CSS file 4 years ago
Andrew Dolgov 5f30061c92 properly calculate marked counters for feeds in nested categories 4 years ago
Andrew Dolgov 60288f02e8 1. feedtree: show counters for marked articles if view-mode == marked
2. hide/show relevant counter nodes using css
3. cleanup some counter-related code
4. compile default css into light theme to prevent cache-related issues
4 years ago
Andrew Dolgov 5b6d9cee29 prefs layout fixes:
1. prevent layout breakage when using an authenticator which doesn't allow changing passwords
2. show explanatory messages when OTP or password changing is not available
3. allow app (API) passwords when using any auth module
4 years ago
Andrew Dolgov 47135160d1 getCategoryCounters: properly handle categories which don't have any stored feeds/articles 4 years ago
Andrew Dolgov 88d4324e32 mark primary button in the default password dialog 4 years ago
Andrew Dolgov 776fe4768b default password warning: fix close button, don't crash if dialog is recreated (on feed tree reload etc) 4 years ago
Andrew Dolgov 0e9e1ad112 getCategoryUnread: return correct unread count for labels category 4 years ago
Andrew Dolgov cdd2b6fd22 getCategoryChildrenUnread: fix typo 4 years ago
Andrew Dolgov a6ced36189 getCategoryCounters: properly calculate counters for child subcategory entries
getCategoryUnread: cleanup
4 years ago
Andrew Dolgov a64b8a7fdb getCategoryUnread: don't return unread counters for Special category because it doesn't make a lot of sense to do so 4 years ago
Andrew Dolgov 2f6741e49a getFeedCounters: pass parameter correctly to PDO 4 years ago
Andrew Dolgov 6080cca9ca scrap counter cache system; rework counters to sum() booleans instead 4 years ago
Andrew Dolgov 3b29e865b0 support night mode in feed debugger 5 years ago
Andrew Dolgov aa56bcaf44 support night mode when using share by URL 5 years ago
Andrew Dolgov f47998f569 generate_syndicated_feed: use local media in generated feeds if it is available 5 years ago
Andrew Dolgov b1c5ebdace API/getVersion: don't try to use removed VERSION constant 5 years ago
Andrew Dolgov fdb1fc7608 get_version: fix commit/timestamp lost on subsequent invocations because of misbehaving caching 5 years ago
Andrew Dolgov 72d0fac80c remove version.php and VERSION global constant, do version-related things in a slightly less ridiculous way 5 years ago
Andrew Dolgov df464e3d0d update app password notice 5 years ago
Andrew Dolgov 9c0235ab66 show current unread counter on headlines toolbar if sidebar is hidden 5 years ago
Andrew Dolgov 76dd74e0d9 add a hidden tweakable which forbids changing passwords 5 years ago
Andrew Dolgov ac95ab4a65 user css dialog: allow saving and applying CSS without closing the dialog 5 years ago
Andrew Dolgov 565547f5a1 php 7.4 deprecation-related fixes 5 years ago
Andrew Dolgov f30287be65 versioning changes
- remove VERSION_STATIC - https://community.tt-rss.org/t/versioning-changes-for-trunk/2974
- report git commit/timestamp properly by invoking git instead of trying to parse .git/HEAD etc
- remove git-related global constants used when checking for updates
5 years ago
Andrew Dolgov d15f0349bf remove hardcoded iframe domain whitelist, make iframe script whitelisting configurable by plugins (HOOK_IFRAME_WHITELISTED) 5 years ago
Andrew Dolgov e5b7b145e5 cache media: set referrer to source URL when fetching images 5 years ago
Andrew Dolgov 304d3a0b88 tag-related fixes
1. move tag sanitization to feedparser common item class
2. enforce length limit on tags when parsing
3. support multiple tags passed via one dc:subject and other such elements, parse them as a comma-separated list
4. sort resulting tag list to prevent different order between feed updates
5. remove some duplicate code related to tag validation
6. allow + symbol in tags
5 years ago
Andrew Dolgov 8c3efd51ec reset domain hit quota on feed update start 5 years ago
Andrew Dolgov 63ce7ea705 add a plugin page warning for plugins using HOOK_FEED_FETCHED, etc 5 years ago
Andrew Dolgov 0d7b10469b update_rss_feed: add specific logging for HOOK_FETCH_FEED, HOOK_FEED_FETCHED, HOOK_FEED_PARSED handlers 5 years ago
Andrew Dolgov 5bb8dad631 is_gzipped: don't try to strpos() over entire buffer 5 years ago
Andrew Dolgov f75fb6bd75 Merge branch 'master' of git.fakecake.org:tt-rss 5 years ago
Andrew Dolgov 266a805bfe line endings + remove : from headings 5 years ago
Andrew Dolgov 05dffcff6f OTP stuff: update notice wording a bit 5 years ago
Andrew Dolgov 812a6c9f16 auth_internal: fix indents 5 years ago
Andrew Dolgov 249130e58d implement app password checking / management UI 5 years ago
Andrew Dolgov 68b0380118 add placeholder authentication via app passwords if service is passed
forbid logins via regular passwords for services
remove AUTH_DISABLE_OTP
5 years ago
Andrew Dolgov 88cd9e586e add placeholder UI plumbing for app passwords 5 years ago
Andrew Dolgov 904ecc31e2 allow using OTP without GD 5 years ago
Andrew Dolgov 647c7c45eb allow article filters to modify num_comments 5 years ago
Andrew Dolgov 2820f41a4b add notification for OTP being disabled 5 years ago
Andrew Dolgov ef514bc4bd add notifications for mail and password changes
update and shorten some other message templates
5 years ago
jc 8fd11fd53a Add const HOOK_FEED_TREE 5 years ago
jc a243979aaf Add const HOOK_FEED_TREE 5 years ago
Andrew Dolgov 4e05008aac update_rss_feed: force cast initial timestamp value to integer 5 years ago
Rodney Stromlund 958c4dc124 Removed extra php end tag that was showing in the page title 5 years ago
Andrew Dolgov b0d67cd3d0 rework previous to pass unformatted timestamp to plugin, and deal with formatting later
also, move timestamp-related debugging output after plugin handler
5 years ago
Andrew Dolgov 94a12b9674 pass formatted entry timestamp to article filters and allow them to modify it 5 years ago
Andrew Dolgov 06393750c7 headline grouping:
1. block grouping for specific feeds where it doesn't make a lot of sense to do so or flat list fits better (archived, recently read)
2. block per-week grouping for feeds where feed-first grouping makes more sense (fresh, starred, published)
5 years ago
Andrew Dolgov 12a542977e makefeedtree: properly calculate feed total amount in no-categories mode 5 years ago
Andrew Dolgov 667836ec7c SQL logger: log some parameters 5 years ago
Andrew Dolgov 3e4701116d af_readability: add missing file 5 years ago
Andrew Dolgov 865c54abcb fix get_method_url() to use correct method parameter 5 years ago
Andrew Dolgov 10c63ed582 pluginhost: add helper methods to get private/public pluginmethod endpoint URLs 5 years ago
Andrew Dolgov e46ed1ff97 API/getHeadlines: fix order of returned feeds to be consistent with main UI 5 years ago
Andrew Dolgov 0e3b71c535 public/pluginhandler: log invalid requests 5 years ago
Andrew Dolgov 7f8946f14e pluginhost: implement priority-based system for running hooks 5 years ago
Andrew Dolgov 5648b836aa HOOK_ARTICLE_IMAGE: allow hooks to modify article content 5 years ago
Andrew Dolgov 75ab1f05f9 DiskCache::rewriteUrls() - remove img[@srcset] 5 years ago
Andrew Dolgov 9d852e052c add HOOK_ARTICLE_IMAGE for Article::get_article_image() 5 years ago
Andrew Dolgov ffb842f752 Article::get_article_image() - provide cached URLs if possible 5 years ago
Andrew Dolgov 150b040dad Article::get_article_image() - set default to "" instead of "false" 5 years ago
Andrew Dolgov d4df57e1a4 Article::get_article_image() - also return stream URI if possible 5 years ago
Andrew Dolgov 68e2b05f65 * move get_article_image to Article; implement better og:image detection (similar to android app)
* pass article image to API clients in headlines row object
5 years ago
Andrew Dolgov c34726b2b2 consistency: use DiskCache->exists() to check for present files 5 years ago
Andrew Dolgov 6914ad1f74 retire MIN_CACHE_FILE_SIZE 5 years ago
Andrew Dolgov 84974c60a7 RSSUtils::cache_media, cache_enclosures: use DiskCache 5 years ago
Andrew Dolgov 39f459eb04 public/cached_url: forbid sending files with extensions 5 years ago
Andrew Dolgov 3c075bfd21 DiskCache: more strict checking for input filenames, getUrl() is no longer static 5 years ago
Andrew Dolgov fdb6066bf6 * HOOK_ENCLOSURE_ENTRY: pass article_id to handler
* DiskCache: multiple fixes; support isWritable() for cache entries, set content-disposition for send()
* public/cached_url: allow selecting files from sub-caches other than images
* plugins/Cache_Starred_Images: rework to use DiskCache, can be enabled per-user, properly handles article enclosures, etc
5 years ago
Andrew Dolgov bed695b127 DiskCache::expire: support .no-auto-expiry to prevent automatic cache maintenance 5 years ago
Andrew Dolgov 19b9b27662 expire_cached_files to DiskCache::expire() 5 years ago
Andrew Dolgov 133c2b482b move rewrite_cached_urls to DiskCache::rewriteUrls() 5 years ago
Andrew Dolgov b1dd38f880 add DiskCache.getUrl() and use it in a bunch of places 5 years ago
Andrew Dolgov 7602819b98 add DiskCache.send; switch af_zz_imgproxy to use DiskCache 5 years ago
Andrew Dolgov 82694bd6ce add DiskCache.isWritable 5 years ago
Andrew Dolgov 86308b30ea add classes/diskcache 5 years ago
Andrew Dolgov 6825aaff55 update SSL certificate wiki link 5 years ago
Andrew Dolgov aa40a268f0 parser: support multiple dc:creator elements (returns as comma-separated list) 5 years ago
Andrew Dolgov 4edfb526e1 change version.json endpoint URL 5 years ago
Andrew Dolgov e8523733b0 filter dialog: add inline regexp checker 5 years ago
Andrew Dolgov 86a014f23b add placeholder Filters.filterDlgCheckRegExp 5 years ago
Andrew Dolgov ea30061cce public: fix share() returning random unshared articles if uuid is not given 5 years ago
Andrew Dolgov 088fcf8131 move more globals to more appropriate places
set libxml to always use internal errors
5 years ago
Andrew Dolgov 4fa9aee4e7 move several more global functions to more appropriate classes 5 years ago
Andrew Dolgov 6d746453c7 get_feeds_from_html: remove XML preamble hack
move several related helper functions to Feeds class
5 years ago
Andrew Dolgov 270b39a337 queryFeedHeadlines: support start_ts when browsing by tag 5 years ago
Andrew Dolgov d36b64d8a7 event log: simplify styles, prevent horizontal scrolling
sql logger: clip context length to 8kb
5 years ago
Andrew Dolgov 905f038610 search dialog: display active query if searching already 5 years ago
Andrew Dolgov 09f520eda2 fix search query test statement stopping valid modifiers like unread: from working 5 years ago
Andrew Dolgov de713035fd when subscribing, check for valid html content type before checking if requested document has HTML doctype/start element 5 years ago
Andrew Dolgov 9423d72f6c parser: force libxml error messages to valid utf8 5 years ago
Andrew Dolgov 84d43a1b44 catchup_feed: invoke HOOK_SEARCH if necessary 5 years ago
Andrew Dolgov 4b74491b8b feed tree: set placeholder feed unread value to -1 5 years ago
Andrew Dolgov bf5dfc444e sql logger: ensure error string and context are valid UTF8 before trying to insert it 5 years ago
Andrew Dolgov fda475bd93 af_readability: fix HOOK_GET_FULL_TEXT not being installed because plugin init() is called before load_data() 5 years ago
Andrew Dolgov ccc0315ef0 better tsquery support:
1. report query syntax errors properly
2. fall back to implicit &-joining only if no joiners are detected in user query, otherwise permit full tsquery syntax
5 years ago
Andrew Dolgov 1cd9b3c866 prevent a fatal error on an invalid tsquery syntax 5 years ago
Andrew Dolgov 6955b2e02d plugins: add HOOK_GET_FULL_TEXT which may be used to provide full text extraction to core code and other plugins, instead of trying to invoke af_readability specifically 5 years ago
fox 525298569e Merge branch 'hotkeys-focus' of suraia/tt-rss into master 5 years ago
Michael Kuhn e38fcd6dea Fix button focus issues
This change introduces derived classes for ComboButton, DropDownButton
and Select that make sure that buttons do not remain focused after their
menus are closed. This allows using hotkeys after closing them.
5 years ago
zeed e397caa82a update the tsvector_combined when create_published_article
https://discourse.tt-rss.org/t/create-published-article-doesnt-update-the-tsvector-combined/2277
5 years ago
Michael Kuhn 4a2a90c980 Fix focus issues with hotkeys
Since making use of keypress in addition to keydown, hotkeys did not
work in certain scenarios, including clicking on the feed tree expanders
or empty spaces of the toolbar.

This issue is caused by dijit.Tree and dijit.Toolbar implementing the
_KeyNavMixin, which explicitly stops propagation of keypress events.

This change contains two main fixes plus a smaller hotfix:
1. It overrides _onContainerKeydown and _onContainerKeypress for
   fox.FeedTree (which inherits from dijit.Tree).
2. It adds fox.Toolbar, which overrides _onContainerKeydown,
   _onContainerKeypress and focus. This fixes hotkeys being swallowed
   and the first focusable child receiving focus when clicking on an
   empty space of the toolbar.
3. It adds the same handling of keydown and keypress to the prefs hotkey
   handler as is done in the main hotkey handler.
5 years ago
Andrew Dolgov dee1614d0a db_prefs: return null if requested key is unset 5 years ago
Andrew Dolgov e31e9ae04d db_prefs: don't report missing prefs if die_on_error is false 5 years ago
Andrew Dolgov ed22473272 feed editor: use DEFAULT_SEARCH_LANGUAGE as a default per-feed dropdown value 5 years ago
Andrew Dolgov c936cc3a1f use DEFAULT_SEARCH_LANGUAGE to generate tsvector index if per-feed language is not specified, also use it as default value on search form for convenience 5 years ago
Andrew Dolgov 1a484ec3f5 feedparser: remove horrible hacks for feeds with broken encoding 5 years ago
Andrew Dolgov 656475ec78 digest text mode excerpt: use ellipsis fit for plain text 5 years ago
Andrew Dolgov 4e1eeb0488 digest text mode: fix article excerpt source 5 years ago
Andrew Dolgov 671f4cee65 domdocument: remove old meta charset unicode hacks, replace with shorter xml preamble utf8 hack (on loadhtml where it makes sense)
af_readability: better (?) charset hack for non-unicode pages
5 years ago
Andrew Dolgov 3bd3324e5a update: add option to send digests 5 years ago
Andrew Dolgov 6ae0a3dd3e share: further improve og:description excerpt logic, minor layout stuff 5 years ago