Commit Graph

1300 Commits

Author SHA1 Message Date
Andrew Dolgov c10a43069e debug logging system rework:
* support various logging levels per-message
 * remove hacks like debug_suppress, DAEMON_EXTENDED_DEBUG, etc
 * _debug() is kept as a compatibility shim for plugins
2018-11-30 08:34:29 +03:00
Andrew Dolgov ed1262d55a oops, remove useless db_escape_string() in article class (and nsfw plugin) 2018-11-29 23:04:12 +03:00
Andrew Dolgov 4508e3103d some more eslint-related stuff 2018-11-29 21:03:55 +03:00
Andrew Dolgov 79c5035920 reset password: use updated mailer parameters properly 2018-11-26 12:44:36 +03:00
Andrew Dolgov 2d54eb1a87 remove cache/simplepie 2018-11-23 12:31:47 +03:00
Andrew Dolgov e08990f753 mailer: fix indents 2018-11-22 16:55:37 +03:00
Andrew Dolgov ac5e55c2bd mailer: return 0 if plugin requested to stop (-1) 2018-11-22 16:39:10 +03:00
Andrew Dolgov 55bf4bc1d3 mailer: split to/from name/addresses 2018-11-22 16:36:10 +03:00
Andrew Dolgov 57932e1837 remove PHPMailer and related directives from config.php-dist; add pluggable Mailer class 2018-11-22 14:45:14 +03:00
Andrew Dolgov 253dbd4856 generate_syndicated_feed: add support for virtual feeds provided by plugins 2018-11-07 14:21:39 +03:00
Andrew Dolgov 22366ccc5b db_prefs: fix cache never being used on read(); remove unnecessary
sprintf()s to integer
2018-11-03 21:52:38 +03:00
Andrew Dolgov 3a0292303e php: remove trailing whitespaces 2018-11-03 15:08:43 +03:00
Andrew Dolgov 2c940c4861 better handle PDOExceptions during open transaction in feed update 2018-11-03 15:00:58 +03:00
Andrew Dolgov 5f66f872b6 fix session write handler always assuming that database entry exists and failing silently if it doesn't; remove session cookie-related hacks 2018-10-16 14:07:42 +03:00
Andrew Dolgov f8fc1ac543 login: check for stale session in login handler, instead of authenticate_user() 2018-10-16 11:39:12 +03:00
Andrew Dolgov f730d7bb0a another attempt to enforce session ID regeneration on login 2018-10-16 09:11:32 +03:00
Andrew Dolgov 65e98f4086 force regenerate session id on successful login, remove previous blank SID check 2018-10-15 15:47:50 +03:00
Andrew Dolgov bb84330234 Logger_SQL: use separate PDO connection 2018-09-10 21:49:31 +03:00
Andrew Dolgov 80fd79ca30 Logger->log() allow passing context (defaults to '') 2018-09-10 21:32:10 +03:00
Andrew Dolgov 4f17c3f977 Logger: add implementation for logger->log(message) 2018-09-10 21:26:28 +03:00
Andrew Dolgov 665495b94b cache_media: only touch() local file if it's writable 2018-09-10 16:17:12 +03:00
Andrew Dolgov d4fef36237 rewrite per-feed/global strip images to strip media 2018-09-07 10:24:46 +03:00
Andrew Dolgov 62d0060aa1 update_daemon_common: do not abort entire batch if PDOException happens when processing individual feeds 2018-09-03 13:03:35 +03:00
Andrew Dolgov 01d22e255f PDO: switch error reporting to exceptions 2018-09-03 12:30:26 +03:00
Andrew Dolgov 2ab49fec9a API: getHeadlines: return feed_id for Archived entries as 0 instead of null to be consistent with requested feed_id 2018-08-29 15:13:07 +03:00
Andrew Dolgov a291a0c00f API: oops, forgot that headlines could be requested for a tag 2018-08-29 12:55:03 +03:00
Andrew Dolgov 70e180e887 API: getHeadlines: check for feed_id correctly 2018-08-29 12:53:33 +03:00
Andrew Dolgov 54727f9534 parser: move media:element handling to feeditem_common; use media:content @media attribute to generate placeholder content-type if not specified 2018-08-21 07:01:26 +03:00
fox 8ab77d19ef Merge branch 'pullreq-enclosure-content-type' of tkappe/tt-rss into master 2018-08-21 03:47:39 +00:00
Andrew Dolgov 2aef804f4b split transparent rewriting of locally cached media URLs to execute after both sanitize() and HOOK_RENDER_ARTICLE to allow plugins work on original source URLs consistently 2018-08-20 12:12:32 +03:00
Tobias Kappé ac8a0e7dc6 Differentiate enclosures based on content type.
Some RSS feeds contain multiple enclosures with the same URL. When the first of
these is not recognized as an image, later entries are not added to the
database as rows in ttrss_enclosures. This change differentiates enclosures
based on their content type, so an entry can have multiple enclosure types with
the same URL (but possibly a different content type).
2018-08-18 17:17:30 +01:00
Andrew Dolgov 04ad631a08 Merge branch 'master' of git.fakecake.org:tt-rss 2018-08-17 10:11:53 +03:00
Andrew Dolgov 88adf3da1b send_local_file: add application/octet-stream hack
cached_url: return original requested filename to save as
2018-08-16 12:16:51 +03:00
Andrew Dolgov 163b50b15f cache_media: only show downloading debug message when actually downloading 2018-08-16 11:56:51 +03:00
Andrew Dolgov 611aeb7197 add debug stdout logger 2018-08-15 15:08:31 +03:00
Andrew Dolgov 069aea5989 remove FEED_CRYPT_KEY and everything related to it
always assume auth_pass_encrypted is false
2018-08-13 15:59:24 +03:00
Andrew Dolgov eb43d9f4a8 fix previous to not crash if document first child is not a DOMElement or whatever 2018-08-12 19:27:04 +03:00
Tobias Kappé a377d5c981 Determine language for atom entry without a loop. 2018-08-12 16:17:13 +01:00
Tobias Kappé 3bbaf902ab Sanitize language obtained for an entry. 2018-08-12 16:12:34 +01:00
Tobias Kappé 22a866edb5 Store language of entries as indicated by the feed. 2018-08-12 15:27:26 +01:00
Andrew Dolgov 32c0c07cc1 pluginhost: implement basic autoloader for classes bundled with plugins (uses vendor/ layout) 2018-08-07 14:36:45 +03:00
BtbN 2b8afd4942 Only strip utf8mb4 if mysql_charset != utf8mb4
If a user has fixed their database properly utf8mb4 works just fine allowing emoji and other 4 byte unicode characters to work.
2018-08-04 13:07:32 +00:00
Andrew Dolgov 6e6c3a878d update_rss_feed: limit maximum length of tsvector data because of pgsql limitations 2018-07-10 14:08:55 +03:00
Andrew Dolgov 310c18e6bb move OTPHP to vendor/; additionally move Base32 class to OTPHP namespace 2018-06-20 18:27:34 +03:00
Andrew Dolgov f5302247c6 share: add support for og:image, etc. metadata for shared articles 2018-05-29 22:04:02 +03:00
MatthieuS 5d95676ecc Call the subscription hook from the plugins even if fetch_file_contents returned no data
This allows a plug-in to override the fetch when the core fetch method fails for some feeds (eg. Tumblr feeds when requested from an EU IP).
2018-05-23 09:00:04 +00:00
Andrew Dolgov 66fe33e769 bump date_updated when updated article data is saved to exclude it from purging (because it is still present in the originating feed) 2018-05-20 10:41:08 +03:00
Andrew Dolgov 963c22646b pass tsvector data as a named parameter on article update, remove escaping hacks 2018-04-03 13:57:27 +03:00
Andrew Dolgov 4fa64e8446 filter dialog: remove placeholder 2018-03-21 14:02:06 +03:00
Andrew Dolgov e794e434da filter dialog: add tooltip re: filter syntax 2018-03-21 13:38:36 +03:00
tsia 551f3c2c85 fixed "reset to defaults" in preferences 2018-03-15 16:26:50 +00:00
Andrew Dolgov 0a8cdd4b9c remove firefox feed subscribe integration code (obsolete) 2018-03-14 18:15:21 +03:00
Andrew Dolgov c9a5e5aa28 feed editor: expose site_url for editing 2018-03-01 15:43:40 +03:00
Andrew Dolgov f1415df47c prefs: expand feed tree if displaying search results 2018-02-26 11:58:53 +03:00
Andrew Dolgov 5edf4b73a4 add a workaround to support numeric tags 2018-02-11 10:24:24 +03:00
Andrew Dolgov f6269d1bc4 add special class for feeds with disabled updates 2018-02-08 13:54:06 +03:00
Andrew Dolgov a340b29ba9 pref-feeds: disable tree autoexpand 2018-02-04 09:36:56 +03:00
Andrew Dolgov 67bf38afda savefeedorder, savefilterorder: do not use clean() on json payload 2018-02-04 09:33:28 +03:00
Andrew Dolgov 7f4a404566 include: convert some spaces to tabs 2018-01-30 10:44:31 +03:00
Andrew Dolgov 102a01354b strip utf8mb4 characters in enclosures on mysql 2018-01-29 23:24:11 +03:00
jsoares 26ad257de5 Fixed time stamping of new unmarked/unpublished articles 2018-01-22 22:41:24 +00:00
Colin Vidal c217de557f rpc: addfeed: gets login and pass only if need_auth is checked.
Because of browser form auto-completion, the hidden field login and
password can be automatically filled when adding a feed. It would
enable feed authentication even if the user doesn't click on need_auth
button.
2018-01-14 20:55:39 +01:00
Andrew Dolgov c30f5e1811 subscribe_to_feed: force-cast login and password to string 2018-01-05 06:50:37 +03:00
immanuelfodor 09be7cdd73 binding statement named param instead of positional replacement 2018-01-02 06:30:22 +00:00
Andrew Dolgov 8dedacf497 remove synchronous feed refreshing on ForceUpdate 2017-12-31 07:37:49 +03:00
Tianon Gravi bbc4d4bf34 treat OPML-imported feeds without a title the same as a batch import 2017-12-29 15:33:01 -08:00
Francesco Turco 1a7277570b fix two-factor authenticaton 2017-12-22 12:29:25 +01:00
Andrew Dolgov d4c05d0be2 update_rss_feed: don't try to use quoted NOW() in query 2017-12-18 18:27:23 +03:00
Andrew Dolgov 6fb5f17be6 pluginhost: always return an array in get_all() 2017-12-17 19:06:18 +03:00
Andrew Dolgov bed2d6e054 force-cast some variables used in queries to integer
do not display SQL query in headlines debug mode
2017-12-17 16:24:13 +03:00
Andrew Dolgov d0cce0c7a4 isdefaultpassword: use method_exists() to check for check_password 2017-12-15 12:15:15 +03:00
Andrew Dolgov 0f05147531 properly highlight search keywords containing forward slash 2017-12-15 08:33:59 +03:00
simonp 5f19596651 Fix typo from previous pull request 2017-12-14 18:43:42 +01:00
Benjamin Collet 44c6a04b61 Check if the auth module supports check_password() method before using it 2017-12-14 18:02:37 +01:00
Andrew Dolgov 9390ddeae2 fix single user mode login failing because of isdefaultpassword() 2017-12-14 19:27:55 +03:00
Andrew Dolgov 1bf468ba1a pref-prefs: set button classes 2017-12-11 18:50:00 +03:00
Andrew Dolgov 121ac0481f filter rule/action dialogs: set default action 2017-12-11 18:46:27 +03:00
Andrew Dolgov ef1feb3610 subscribe dialog: add primary action 2017-12-11 18:43:53 +03:00
Andrew Dolgov 05e81655c3 user editor: add primary action 2017-12-11 18:41:32 +03:00
Andrew Dolgov 6fb5ce5e35 add some primary dialog actions; update css 2017-12-11 18:36:36 +03:00
Andrew Dolgov 5f7be9957f filter,label dlg: use default action 2017-12-11 18:23:30 +03:00
Andrew Dolgov 320a3ba529 search form: set default action 2017-12-11 18:14:45 +03:00
Andrew Dolgov f70d456a5b Merge branch 'master' of git.tt-rss.org:git/tt-rss into pdo-experimental 2017-12-11 12:54:30 +03:00
fox c463a95dca Merge branch 'master' of dim0x69/tt-rss into master 2017-12-11 09:47:04 +00:00
dim0x69 e58a14de72 Check return value from Plugins 2017-12-11 09:41:45 +00:00
fox 9306918767 Merge branch 'pda-rss-now' of richm/tt-rss into pdo-experimental 2017-12-11 04:01:28 +00:00
Richard Mortimer aa16334f1f Include NOW() in prepared SQL for rssutils.php 2017-12-10 23:05:52 +00:00
Andrew Dolgov 1c1fc17120 synchronous feed update: catch PDO exceptions as to not break headlines output 2017-12-10 21:10:19 +03:00
Andrew Dolgov 83a052f1fa pdo_connect: catch exception on create 2017-12-10 09:27:07 +03:00
Andrew Dolgov f8db5bb4db installer: use PDO, improve wording for some notices
PDO wrapper: allow working with blank DB_HOST
2017-12-10 09:20:52 +03:00
Andrew Dolgov 8e1450aa15 update previous to only affect mysql 2017-12-05 22:46:18 +03:00
Andrew Dolgov f76f773a16 purge_orphans: limit maximum number of deleted articles 2017-12-05 22:37:50 +03:00
Andrew Dolgov 99b23daee6 opml_import_filter: remove debugging 2017-12-05 10:18:54 +03:00
Andrew Dolgov 8f92a67e6f some (very minor) code cleanup in feeds class 2017-12-04 10:39:50 +03:00
Andrew Dolgov 003a7447c3 format_headlines_list: prevent warning on first_id changed check 2017-12-04 10:26:22 +03:00
Andrew Dolgov 92175a8371 setpref: remove nl2br() 2017-12-04 08:27:25 +03:00
Andrew Dolgov e6532439d6 force strip_tags() on all user input unless explicitly allowed 2017-12-03 23:35:38 +03:00
Andrew Dolgov 7c6f7bb0aa fix some minor issues found by code analyzer 2017-12-03 23:08:04 +03:00
Andrew Dolgov fa3bcfa379 queryfeedheadlines: there's no need to quote order_by/override_order
else: feedicon cache busting etc
2017-12-03 22:49:57 +03:00
Andrew Dolgov 5f5b0de423 style feed icon and opml file upload controls 2017-12-03 22:35:12 +03:00
Andrew Dolgov 229c139c6a ccache: properly recalculate counters for uncategorized 2017-12-03 21:34:57 +03:00
Andrew Dolgov 342e8a9eeb move feeds cache directory to cache/feeds 2017-12-03 21:01:35 +03:00
Andrew Dolgov 7c0eb1b621 add defaultPasswordWarning nag dialog 2017-12-03 20:46:27 +03:00
Andrew Dolgov 31e2811a63 ttrss_zoom: fix CSS 2017-12-03 19:55:19 +03:00
Andrew Dolgov 2f0623c9a5 db: return adapter on get(), remove IDB wrapper 2017-12-03 14:54:15 +03:00
Andrew Dolgov df5d2a0665 pluginhost: do not connect via legacy DB api until requested
log all initiated legacy database connections
2017-12-03 14:49:18 +03:00
Andrew Dolgov 2cf93c046c pref-users: fix sorting the table 2017-12-03 13:54:31 +03:00
Andrew Dolgov 28040002f3 pdo connection string: properly check for DB_PORT 2017-12-03 13:37:43 +03:00
Andrew Dolgov 1f16f9b8ae feed debugger: only allow debugging users own feeds 2017-12-03 13:35:18 +03:00
Andrew Dolgov 93e70e36c2 force article content/etc to string when updating to avoid failing null constraint check 2017-12-03 13:32:24 +03:00
Andrew Dolgov b51d44a5e6 further stylesheet simplification related fixes (2) 2017-12-03 13:26:26 +03:00
Andrew Dolgov 09bc54c690 further stylesheet simplification related fixes 2017-12-03 13:25:34 +03:00
Andrew Dolgov 5e68e24679 css/less updates 2017-12-03 12:50:07 +03:00
Andrew Dolgov 4dc3f7e779 api: do not use sql_bool_to_bool() 2017-12-03 11:06:49 +03:00
Andrew Dolgov 69563c96b4 plugin base: add type hint to init(host) 2017-12-03 10:11:32 +03:00
Andrew Dolgov 49a888ecce rssutils: forbid question marks in tsvector data, PDO gets confused sometimes even by quoted ?s 2017-12-03 10:10:01 +03:00
Andrew Dolgov 64312bfd71 feeds: remove sql_bool_to_bool() 2017-12-03 09:44:08 +03:00
Andrew Dolgov b6f3562d1e plugin base class: init pdo object
plugins/share: use PDO
2017-12-03 09:43:18 +03:00
Andrew Dolgov 187abfe732 main classes: remove sql_bool_to_bool() kludge 2017-12-03 09:35:59 +03:00
Andrew Dolgov 8ff3cbb32e filters: remove sql_bool_to_bool()
checkbox_to_sql_bool: return ints (???)
2017-12-03 09:26:11 +03:00
Andrew Dolgov e4291ba12f otpenable: use pdo prepare() 2017-12-03 09:10:14 +03:00
Andrew Dolgov 731ecac530 completeLabels: use prepare() not query() 2017-12-03 09:06:43 +03:00
Andrew Dolgov 7d960ce7e9 auth_internal: use PDO + other fixes 2017-12-03 00:18:08 +03:00
fox ab1960cf13 Merge branch 'upstream/pdo-experimental' of JustAMacUser/tt-rss into pdo-experimental 2017-12-02 19:50:00 +00:00
Andrew Dolgov bfccff11c4 filter rule saving fix 2017-12-02 22:47:47 +03:00
JustAMacUser 1a05210933 Fixed PDO query to prepared statement in API::updateArticles. 2017-12-02 14:08:55 -05:00
Andrew Dolgov bf6db17b8f feeds: use PDO 2017-12-02 16:07:03 +03:00
Andrew Dolgov 2e52e4fd7a feeds: more PDo stuff 2017-12-02 15:53:32 +03:00
Andrew Dolgov e4befe6bf4 fix label cache being double escaped on save
remove some old-style escaping
2017-12-02 15:47:53 +03:00
Andrew Dolgov 7a1872c1e0 feeds: more PDO stuff 2017-12-02 15:36:32 +03:00
Andrew Dolgov b5bf9a0ff3 remove long forgotten stuff related to feed debugging actionbar 2017-12-02 15:12:39 +03:00
Andrew Dolgov 91d679667e feeds: PDO progress 2017-12-02 15:04:11 +03:00
Andrew Dolgov da9ea57d1c checkbox to sql bool related changes, some more boolean fixes 2017-12-02 14:07:48 +03:00
Andrew Dolgov 7ccb4e91ff boolean handling changes which probably won't break everything 2017-12-02 14:02:01 +03:00
Andrew Dolgov 248c62a1cc filters: fix limit/offset for test dialog 2017-12-02 13:54:18 +03:00
Andrew Dolgov bf4a79eaa9 prefs: start PDO switchover 2017-12-02 13:49:35 +03:00
Andrew Dolgov f594717d18 filters: use PDO 2017-12-02 13:28:13 +03:00
Andrew Dolgov 21295a52aa labels: PDO 2017-12-02 12:45:33 +03:00
Andrew Dolgov c2418a559b pref-users: PDO 2017-12-02 12:23:41 +03:00
Andrew Dolgov 93ca6c95b8 pref-system: PDO 2017-12-02 12:03:39 +03:00
Andrew Dolgov 7039370368 pref-prefs: PDO 2017-12-02 12:01:56 +03:00
Andrew Dolgov f8108cc28d pluginhost: save_data() fixes 2017-12-02 11:31:02 +03:00
Andrew Dolgov 8af94f1292 pluginhost: use PDO 2017-12-02 11:25:43 +03:00
Andrew Dolgov 0500e14cc2 update_rss_feed: transaction lock article processing 2017-12-02 11:16:33 +03:00
Andrew Dolgov 0567016b40 rssutils: PDO 2017-12-02 09:56:34 +03:00
Andrew Dolgov afcb105f4e rssutils: start PDO switch 2017-12-02 08:38:57 +03:00
Andrew Dolgov 1d92297a96 dbupdater: use PDO 2017-12-02 01:28:30 +03:00
Andrew Dolgov c949a9282e OPML: use PDO; minor fixes 2017-12-02 01:08:30 +03:00
Andrew Dolgov 4102eb843f sql logger: pdo 2017-12-02 00:13:28 +03:00
Andrew Dolgov c1c08aed39 labels: PDO 2017-12-02 00:06:17 +03:00