Commit Graph

2240 Commits

Author SHA1 Message Date
Andrew Dolgov 56cf425e45 revise prototype for hook_enclosure_imported 2021-11-14 23:03:25 +03:00
wn_ 9326ed605f Address PHPStan warning in 'classes/pref/filters.php'. 2021-11-14 17:59:57 +00:00
wn_ 812f5f532e Address PHPStan warning in 'classes/mailer.php'. 2021-11-14 17:59:57 +00:00
Andrew Dolgov 931a7533ce adjust some return types in urlhelper 2021-11-14 20:53:30 +03:00
Andrew Dolgov afdb4b0072 set phpdoc annotations for auth_base 2021-11-14 20:26:05 +03:00
Andrew Dolgov 6bd6a14c20 revise phpdoc annotations for hook_sanitize() 2021-11-14 20:19:12 +03:00
wn_ f5c881586b Handle potentially null link, title, etc. in FeedParser. 2021-11-14 16:59:21 +00:00
Andrew Dolgov 7988c79bd4 plugin.php: add some minor method phpdoc corrections 2021-11-14 18:05:31 +03:00
Andrew Dolgov 1b5c61ac85 userhelper: add a phpdoc variable class hint 2021-11-14 18:02:20 +03:00
Andrew Dolgov 01b39d985c deal with the rest of warnings in plugin.php 2021-11-14 18:00:03 +03:00
Andrew Dolgov dd7299b6d0 deal with a few more phpstan warnings re: base plugin class 2021-11-14 17:19:35 +03:00
Andrew Dolgov 55729b4bbd fix HOOK_QUERY_HEADLINES being invoked with different argument lists, add some more phpdoc comments for base plugin class 2021-11-14 17:07:47 +03:00
Andrew Dolgov af2f4460ce * deal with some phpstan warnings in base plugin class
* arguably better hack for incompatible plugins causing E_COMPILE_ERROR
2021-11-14 16:49:10 +03:00
Andrew Dolgov 15af164f69 pluginhost: add a hack to not crash on an incompatible plugin more than once (per login) - UGLY 2021-11-14 11:50:55 +03:00
Andrew Dolgov 0a2dcacbcf normalize some mismatching hook function definitions to match base Plugin class 2021-11-14 11:11:49 +03:00
Andrew Dolgov 81a10f69bc deal with phpstan warnings related to base authentication modules 2021-11-14 10:48:32 +03:00
wn_ 5a50c333b2 Address PHPStan warnings in 'classes/pref/filters.php'. 2021-11-14 00:59:19 +00:00
Andrew Dolgov fe5ada7250 set some annotations on Plugin hook methods 2021-11-13 20:07:13 +03:00
Andrew Dolgov 5e34fe17a7 experimental: bring back plugin hooks to Plugin base class once (to be improved/fixed with annotations later) 2021-11-13 20:03:28 +03:00
Andrew Dolgov 618e96b793 deal with some warnings in plugins/trgm,readability and base plugin class 2021-11-13 19:55:30 +03:00
Andrew Dolgov 03d0692268 no need to duplicate annotations 2021-11-13 19:52:47 +03:00
Andrew Dolgov 37827427a2 rework previous Plugin changes as phpdoc annotations 2021-11-13 19:41:50 +03:00
Andrew Dolgov 9845d5fd15 revert all plugin base class related changes to keep compatibility with extant plugins (for the time being) 2021-11-13 19:36:26 +03:00
wn_ edd476e7fe minor: correct $cat type in Pref_Feeds#calculate_children_count() 2021-11-13 16:00:59 +00:00
wn_ a18473e4c0 Address PHPStan warnings in 'classes/pref/feeds.php'. 2021-11-13 15:56:31 +00:00
wn_ b37a03fb31 Fix the type of Labels::update_cache() 2021-11-13 15:56:31 +00:00
Andrew Dolgov f2323bda81 fix phpstan warnings in classes/plugin-template.php 2021-11-13 18:26:11 +03:00
Andrew Dolgov 70051742af experimental: also don't keep base plugin template as a non-analyzed file 2021-11-13 18:21:04 +03:00
Andrew Dolgov b381e95792 experimental: auto-generate and add all plugin hook methods to Plugin class 2021-11-13 18:18:05 +03:00
Andrew Dolgov 8a83f061bf fix phpstan warnings in classes/sanitizer.php 2021-11-13 17:52:03 +03:00
Andrew Dolgov a7983d475e fix phpstan warnings in classes/api.php 2021-11-13 17:51:26 +03:00
Andrew Dolgov 77b8dc7386 fix phpstan warnings in classes/feedparser.php 2021-11-13 17:48:52 +03:00
Andrew Dolgov 45431170b6 fix phpstan warnings in classes/db/migrations.php 2021-11-13 17:31:13 +03:00
wn_ 3ba8d964b6 Address PHPStan warnings in 'classes/api.php'. 2021-11-13 14:15:20 +00:00
wn_ 1ec003ce35 Typing IHandler methods, typing Handler_Public, fix type of $feed_id (might be tag). 2021-11-13 14:05:48 +00:00
wn_ 25775bb407 Fix type of 'check_first_id' in Feeds '_format_headlines_list'. 2021-11-13 04:16:36 +00:00
wn_ d3a81f598b Switch class properties from PHP typing to PHPDoc for compatibility with PHP < 7.4.0 2021-11-12 21:17:31 +00:00
wn_ 2c41bc7fbc Address PHPStan warnings in 'classes/mailer.php', 'classes/opml.php', and 'classes/pluginhandler.php'. 2021-11-12 06:16:18 +00:00
wn_ 9db5e402a0 Address PHPStan warnings in 'classes/rpc.php'.
Also a couple minor fixes in 'classes/article.php' and 'classes/labels.php'.
2021-11-12 05:42:55 +00:00
wn_ 011c941e7c Fix some PHPStan warnings in 'classes/db/migrations.php', 'classes/db/prefs.php', and 'classes/debug.php'. 2021-11-12 05:24:02 +00:00
wn_ b0eb347839 Fix a warning in 'classes/counters.php'. 2021-11-12 05:04:55 +00:00
wn_ 763515de79 Address PHPStan warnings in 'classes/feeds.php'.
Also some minor related tweaks in other classes.
2021-11-12 04:48:06 +00:00
wn_ 5606e38bff Update signature of handler 'csrf_ignore' to include types. 2021-11-12 02:01:31 +00:00
wn_ 57bf56f794 Address PHPStan warnings in 'classes/article.php'.
Also related changes in some other classes.
2021-11-12 01:50:40 +00:00
wn_ a0f37c3206 Address PHPStan warnings in 'classes/pluginhost.php'. 2021-11-12 00:06:00 +00:00
wn_ 95277fd099 Address PHPStan warnings in 'classes/labels.php'. 2021-11-11 22:28:13 +00:00
wn_ 2d5603b196 Address PHPStan warnings in 'classes/diskcache.php'. 2021-11-11 22:07:32 +00:00
wn_ 50997df57a Address PHPStan warnings in 'inclasses/digest.php'. 2021-11-11 21:46:44 +00:00
wn_ 728a71150a Fix 'TimeHelper::make_local_datetime()' (null is allowed). 2021-11-11 21:33:12 +00:00
wn_ 58ea0d4339 Address PHPStan warnings in 'classes/debug.php'. 2021-11-11 21:02:06 +00:00
wn_ 2e3a9098b9 Address PHPStan warnings in 'classes/userhelper.php'. 2021-11-11 20:25:13 +00:00
wn_ f704d25ab1 Address PHPStan warnings in 'classes/timehelper.php'. 2021-11-11 20:12:47 +00:00
wn_ 03495c11ed Address PHPStan warnings in 'classes/sanitizer.php'.
This also includes some minor tweaks to things that call 'Sanitizer::sanitize()'.
2021-11-11 19:59:25 +00:00
wn_ 3f8aaffd34 Address PHPStan warnings in 'classes/rssutils.php'.
This also includes a minor tweak in 'update.php' to account for 'getopt()' potentially returning false (indicating failure).
2021-11-11 18:53:52 +00:00
wn_ eb068fbc47 Address PHPStan warnings in 'classes/prefs.php'. 2021-11-11 16:47:51 +00:00
wn_ 14ca0f2ac0 Address PHPStan warnings in 'classes/counters.php'. 2021-11-11 12:26:30 +00:00
wn_ 7a919a79d7 Fix some additional PHPStan warnings in UrlHelper. 2021-11-11 11:12:40 +00:00
wn_ 4cc3374f9f Initial go at PHPStan rule level 6. 2021-11-10 21:38:25 +00:00
Andrew Dolgov 9e8d69739f add two helper account access levels:
- read only - can't subscribe to more feeds, feed updates are skipped
 - disabled - can't login
define used access levels as UserHelper constants and refactor code to
use them instead of hardcoded numbers
2021-11-10 20:44:51 +03:00
wn_ 9dac9c5a0d Address PHPStan warnings in 'classes/urlhelper.php'.
Intentionally skipping the line 66 one for now; adding an 'is_array' check clears the warning, but there's a larger topic of how to handle an invalid '' that doesn't result in an array.

------ ---------------------------------------------------------------------
Line   classes/urlhelper.php
------ ---------------------------------------------------------------------
66     Offset 'path' on array{scheme: string} in isset() does not exist.
165    Parameter #2 $associative of function get_headers expects bool, int
        given.
167    Parameter #2 $associative of function get_headers expects bool, int
        given.
278    Negated boolean expression is always true.
309    Negated boolean expression is always true.
------ ---------------------------------------------------------------------
2021-11-01 21:10:27 +00:00
wn_ ac5a4f5937 Address PHPStan warning in 'classes/pref/users.php'.
------ -------------------------------
Line   classes/pref/users.php
------ -------------------------------
170    If condition is always false.
------ -------------------------------
2021-11-01 21:10:27 +00:00
wn_ a38892d5d7 Address PHPStan warning in 'classes/pref/prefs.php'.
------ ------------------------------------------------
Line   classes/pref/prefs.php
------ ------------------------------------------------
1328   Expression on left side of ?? is not nullable.
------ ------------------------------------------------
2021-11-01 21:10:27 +00:00
wn_ 8a920a16e7 Address PHPStan warnings in 'classes/pluginhost.php'.
------ --------------------------------------------------------------------
Line   classes/pluginhost.php
------ --------------------------------------------------------------------
16     Property PluginHost::$last_registered is never read, only written.
386    If condition is always true.
------ --------------------------------------------------------------------
2021-11-01 21:10:27 +00:00
wn_ a7a59fe0e2 Address PHPStan warning in 'classes/logger/sql.php'.
------ --------------------------------------
Line   classes/logger/sql.php
------ --------------------------------------
4      Property Logger_SQL::$pdo is unused.
------ --------------------------------------
2021-11-01 21:10:27 +00:00
wn_ 72cf4f1f0d Address PHPStan warning in 'classes/feeds.php'.
------ ------------------------------------
Line   classes/feeds.php
------ ------------------------------------
8      Property Feeds::$params is unused.
------ ------------------------------------
2021-11-01 21:10:27 +00:00
wn_ 5b17c44e70 Address PHPStan warning in 'classes/feeditem/common.php'.
------ ---------------------------------------------
Line   classes/feeditem/common.php
------ ---------------------------------------------
194    No error to ignore is reported on line 194.
------ ---------------------------------------------
2021-11-01 21:10:27 +00:00
wn_ 7d8837ca17 Address PHPStan warnings in 'classes/db.php'.
------ --------------------------------------------------
Line   classes/db.php
------ --------------------------------------------------
7      Property Db::$link is unused.
86     Property Db::pdo (PDO) in empty() is not falsy.
------ --------------------------------------------------
2021-11-01 21:10:27 +00:00
wn_ 77a98134b8 Address PHPStan warnings in 'classes/config.php'.
------ -----------------------------------------------------------------------
Line   classes/config.php
------ -----------------------------------------------------------------------
3      Constant Config::_ENVVAR_PREFIX is unused.
177    Constant Config::_DEFAULTS is unused.
237    Property Config::$schema_version is never read, only written.
352    Property Config::$migrations (Db_Migrations) in empty() is not falsy.
------ -----------------------------------------------------------------------
2021-11-01 21:10:26 +00:00
Andrew Dolgov 76d8b1bf6f HOOK_ARTICLE_BUTTON/HOOK_ARTICLE_LEFT_BUTTON: only try to parse markup if its actually there 2021-10-26 15:45:12 +03:00
Andrew Dolgov 933913410c css: make plugin button container a flexbox
backend: pass plugin button generated code through domdocument to ensure
its correctness; set data-plugin-name attribute on children to make
them sortable via css
2021-10-24 20:11:49 +03:00
Andrew Dolgov 9f734c9050 minor phpstan tweaks 2021-10-22 13:49:08 +03:00
Andrew Dolgov 41245da8a6 pluginhost: update comments for HOOK_ constants to use phpdoc syntax; add HOOK_PRE_SUBSCRIBE 2021-10-22 13:24:10 +03:00
Philip Klempin aead30a041 Fix undefined array key "output" when adding new label 2021-10-15 23:05:50 +00:00
Andrew Dolgov a936e80630 OPML improvements/fixes:
* allow CLI import of OPML files (--opml-import)
 * visualize OPML structure when importing
 * add strict type hints to most OPML class methods
2021-10-15 10:06:00 +03:00
Andrew Dolgov 145fc31625 feed tree context menu: add an entry to open originating website 2021-10-10 22:08:17 +03:00
Andrew Dolgov 949e2ab4d2 properly sanitize video poster attribute 2021-09-24 08:40:06 +03:00
Andrew Dolgov 8ed927dbd2 OPML: multiple fixes
- remove unused integer indexes when exporting filters as JSON
 - fix warning when importing filters without rules
 - properly assign category IDs for category filter rules
 - fix warning: check if outline attributes like xmlUrl are set before trying to use them
 - fix warning: don't try to use libxml_disable_entity_loader on PHP 8
2021-09-08 09:04:15 +03:00
Andrew Dolgov 78ff7770d1 classes/opml: fix indentation; when importing, don't produce warning
on filters with no rules defined.
2021-09-08 08:12:13 +03:00
Andrew Dolgov 36e174750e fix label ordering in feed tree 2021-09-02 08:21:05 +03:00
jmechnich e8f9567d79 fix password recovery 2021-08-25 18:18:04 +02:00
Andrew Dolgov a1173ab06a block useless usort() E_DEPRECATED for the time being 2021-08-23 18:38:37 +03:00
Andrew Dolgov 2c931df77c remove SELF_USER_AGENT custom constant, replaced with configurable Config::HTTP_USER_AGENT / Config::get_user_agent() 2021-08-23 10:56:31 +03:00
Andrew Dolgov 5c60254474 Pref_Feeds:calculate_children_count - fix operator precedence 2021-08-23 10:45:34 +03:00
Andrew Dolgov 0808123179 fix broken feed tree generation when categories are disabled 2021-08-18 21:02:58 +03:00
wn_ 23b4152c9e Make prefs feed search case-insensitive.
Previously the search query had to match lower title or feed_url (i.e. searching w/ uppercase wouldn't match).
2021-08-17 23:14:14 +00:00
wn_ 992e9cd9e3 Use ORM more in 'classes/pref/feeds.php'. 2021-08-17 23:03:35 +00:00
Andrew Dolgov 73d14338ab fix rendering of category filters on Uncategorized 2021-07-28 12:59:47 +03:00
Philip Klempin 14d57d9a14 Rewrite feed entry link as href content 2021-06-19 14:36:04 +02:00
Philip Klempin 1d4d3bc49c Fix operator precedence 2021-06-18 12:52:29 +02:00
Andrew Dolgov 800ebd6373 revise previous a little bit more 2021-06-18 11:52:06 +03:00
Andrew Dolgov 69f261c41d revise previous a little bit 2021-06-18 11:30:11 +03:00
Andrew Dolgov e9c062a189 UrlHelper::rewrite_relative():
- support invoking specifying owner URL element/attribute
 - restrict mailto/magnet/tel schemes for A href
 - allow some data: base64 image types for IMG src

Sanitizer::sanitize():

 - when checking href and src attributes, pass element tagname and attribute to rewrite_relative()
2021-06-18 11:20:57 +03:00
fox 34807bacd4 Merge pull request 'Skip all urls with schemes different from base_url in rewrite_relative' (#38) from klempin/tt-rss:fix/mailto into master
Reviewed-on: https://git.tt-rss.org/fox/tt-rss/pulls/38
2021-06-17 18:51:35 +03:00
Philip Klempin b3bedd0a94 Skip URI base on ALLOWED_RELATIVE_SCHEMES in rewrite_relative 2021-06-16 15:24:15 +02:00
Andrew Dolgov 8ed8a10965 add settings profile cloning 2021-06-16 14:24:57 +03:00
Andrew Dolgov 326850845d UrlHelper::rewrite_relative: don't try to feed NULL to with_trailing_slash() 2021-05-21 17:10:32 +03:00
Andrew Dolgov dff479af64 feeditem_atom: support xml:base for enclosures and entry content
UrlHelper::rewrite_relative: use base URL path if relative url path is not absolute (experimental)
2021-05-21 15:39:41 +03:00
Andrew Dolgov 8574532b7f add hotkeys J/K to move between unread feeds 2021-05-20 20:32:00 +03:00
Andrew Dolgov 295fc1f88a API: bump api level to 17 2021-05-18 16:55:00 +03:00
Andrew Dolgov 2adf364c2c provide base configuration object in login response to skip on initial getConfig 2021-05-18 16:54:33 +03:00