Commit Graph

1460 Commits

Author SHA1 Message Date
Andrew Dolgov 948471a44b self url path checking: accept value without an ending slash 2017-07-06 22:51:56 +03:00
Andrew Dolgov 2953687b72 sanity: it's probably a good idea to check whether we're running under httpd before enforcing SELF_URL_PATH checks 2017-07-05 22:46:05 +03:00
Andrew Dolgov 1f91695895 previous: spaces -> tabs 2017-07-05 22:07:41 +03:00
Andrew Dolgov 7506b61af2 sanity: check whether SELF_URL_PATH conforms to data returned by httpd 2017-07-05 22:00:31 +03:00
Andrew Dolgov d76d5e86d2 controls: disable print_feed_select (unused) 2017-07-02 22:57:06 +03:00
Andrew Dolgov 10a1f28f7c schema: updates for new filter format (bump version to 131) 2017-07-02 20:59:24 +03:00
Andrew Dolgov 02f3992a5a Revert "Revert "filters: support matching on multiple feeds/categories""
This reverts commit f5d174bda9.
2017-07-02 20:37:52 +03:00
Andrew Dolgov f5d174bda9 Revert "filters: support matching on multiple feeds/categories"
This reverts commit 0bf7e007bb.
2017-07-02 20:37:01 +03:00
Andrew Dolgov 0bf7e007bb filters: support matching on multiple feeds/categories
opml: update filter export/import for new format
2017-07-02 20:27:21 +03:00
Andrew Dolgov 6fd0399694 tunables:
* add CACHE_MAX_DAYS as a tunable generic expiry interval for various cached files
* add some comments to tunables in functions.php
* rename _MIN_CACHE_FILE_SIZE to MIN_CACHE_FILE_SIZE
* respect MIN_CACHE_FILE_SIZE setting in a few more places where content is cached
2017-05-29 23:14:42 +03:00
wn_ 9b8bec700a Replace '__autoload' (deprecated in PHP 7.2) with 'spl_autoload_register'.
http://php.net/manual/en/function.autoload.php
http://php.net/spl_autoload_register
https://wiki.php.net/rfc/deprecations_php_7_2
2017-05-27 10:52:16 -05:00
Andrew Dolgov 5b6ea1ef91 remove pubsubhubbub: dead 2017-05-16 10:41:20 +03:00
Andrew Dolgov c114a2596f move add_feed_url() to pref_feeds 2017-05-11 09:07:49 +03:00
Andrew Dolgov 4fd0790804 fix DAEMON_SLEEP_INTERVAL not being defined when used
enforce minimum 60 sec spawn/sleep interval in update processes
2017-05-06 10:54:14 +03:00
Andrew Dolgov e6c886bf66 wrap rssfuncs into rssutils class 2017-05-05 18:10:07 +03:00
Andrew Dolgov 65af3b2cbb move counter stuff to a separate class 2017-05-05 11:54:31 +03:00
Andrew Dolgov e35ba0e212 add sanity check for SELF_URL_PATH going to http url if server is accessed over https 2017-05-05 10:16:54 +03:00
Andrew Dolgov 7c9b5a3fe4 move label stuff to Labels class
fix some unresolved functions
2017-05-04 15:57:40 +03:00
Andrew Dolgov c2f0f24e4c move digest stuff to Digest class 2017-05-04 15:41:38 +03:00
Andrew Dolgov 0086a89740 move some label stuff to labels.php
move getfeedcategory() to Feeds
2017-05-04 15:36:36 +03:00
Andrew Dolgov 904aff7667 abs_to_rel_path: removed 2017-05-04 15:28:21 +03:00
Andrew Dolgov 4a0da0e5bf move get_article_labels to Article 2017-05-04 15:26:21 +03:00
Andrew Dolgov 2ed0d6c433 move counter cache to a separate class
fix references to get_article_tags
2017-05-04 15:22:57 +03:00
Andrew Dolgov aeb1abedb2 move a bunch of functions into Feeds/Article namespaces
+       static function catchupArticlesById($ids, $cmode, $owner_uid = false) {
+       static function getLastArticleId() {
+       static function queryFeedHeadlines($params) {
+       static function getParentCategories($cat, $owner_uid) {
+       static function getChildCategories($cat, $owner_uid) {

move the rest of functions2.php back to functions.php as it is of more manageable size, remove the former
2017-05-04 15:13:02 +03:00
Andrew Dolgov a230bf88a9 move to Article:
+       static function purge_orphans($do_output = false) {

move to Feeds

+       static function getGlobalUnread($user_id = false) {
+       static function getCategoryTitle($cat_id) {
+       static function getLabelUnread($label_id, $owner_uid = false) {
2017-05-04 15:00:21 +03:00
Andrew Dolgov 86a8351ca2 move the following to Feeds:
+       static function catchup_feed($feed, $cat_view, $owner_uid = false, $mode = 'all', $search = false) {
+       static function getFeedArticles($feed, $is_cat = false, $unread_only = false,
+       static function subscribe_to_feed($url, $cat_id = 0,
+       static function getFeedIcon($id) {
+       static function getFeedTitle($id, $cat = false) {
+       static function getCategoryUnread($cat, $owner_uid = false) {
+       static function getCategoryChildrenUnread($cat, $owner_uid = false) {
2017-05-04 14:50:56 +03:00
Andrew Dolgov 7e5f8d9fb3 move the following to Article:
+       static function format_article_enclosures($id, $always_display_enclosures,
+       static function format_article($id, $mark_as_read = true, $zoom_mode = false, $owner_uid = false) {
+       static function get_article_tags($id, $owner_uid = 0, $tag_cache = false) {
+       static function format_tags_string($tags) {
+       static function format_article_labels($labels) {
+       static function format_article_note($id, $note, $allow_edit = true) {
+       static function get_article_enclosures($id) {
2017-05-04 14:38:45 +03:00
Andrew Dolgov 4122da0290 move getArticleFeed to Article
move print_label_select to controls
2017-05-04 14:26:44 +03:00
Andrew Dolgov e60d5b0a84 move opml-specific get_feed_category to opml.php 2017-05-04 14:24:30 +03:00
Andrew Dolgov 9549e33c2c move some common control-generating functions to controls.php 2017-05-04 14:22:23 +03:00
Andrew Dolgov 07d3431e28 update_rss_feed: minor code cleanup 2017-04-27 13:08:43 +03:00
Andrew Dolgov ea79a0e033 remove some redundant php closing tags 2017-04-26 20:24:18 +03:00
Andrew Dolgov 7b55001eee fix various issues reported by static analysis
update gitlab-ci config
2017-04-26 15:29:22 +03:00
Andrew Dolgov 467bc4fe03 bump version_static to 17.4 2017-04-23 00:48:51 +03:00
Andrew Dolgov 337535416f filter by search results while marking feed as read 2017-03-31 11:21:35 +03:00
Andrew Dolgov 86e534290e enclosures: rewrite relative urls on import, duh 2017-03-27 19:20:46 +03:00
Andrew Dolgov 9594ea6875 add cosmetic suffixes back for cached url links 2017-03-23 18:26:43 +03:00
Andrew Dolgov dc2c4b13d4 when choosing enclosures to embed or rewrite (af_zz_imgproxy) only use content type instead of "filename"-based hacks 2017-03-23 15:22:00 +03:00
Andrew Dolgov 388d4dfa88 enable caching of media in article enclosures 2017-03-23 15:19:25 +03:00
Andrew Dolgov 48eefd8c5c allow caching of audio files 2017-03-23 15:03:22 +03:00
Andrew Dolgov 41bead9baa remove local file extensions and generalize some method names for cached media
file extensions may still be present in urls, but are ignored by the backend

MIGRATION (if you have any cached data worth keeping, not required):
in cache/images run "rename 's/\..*$//' *" i.e. strip file extensions
2017-03-23 14:55:40 +03:00
Andrew Dolgov 8519c68d93 rewrite relative urls for html5 audio source elements 2017-03-06 09:20:58 +03:00
Andrew Dolgov 1bfe1d7b31 simplify error handling
* less convoluted exception dialogs
* use window.onerror for the majority of exception catching/reporting
* remove most of now useless try/catch blocks
* report stacktrace instead of manually specified error locations
2017-03-04 14:34:44 +03:00
Luc Didry 453787526a Improve update_feedbrowser_cache SQL query 2017-02-16 12:05:32 +01:00
Andrew Dolgov 4a23031fcd rewrite_relative_url: cleanup resulting url path while rewriting 2017-02-13 15:25:21 +03:00
Andrew Dolgov 454292b295 format_article_enclosures: allow embedding .jpeg files 2017-02-12 20:24:29 +03:00
Andrew Dolgov 676c7303ca add HOOK_ENCLOSURE_ENTRY for af_zz_imgproxy (2) 2017-02-12 17:02:07 +03:00
Andrew Dolgov 58210301e0 add HOOK_ENCLOSURE_ENTRY for af_zz_imgproxy 2017-02-12 16:01:28 +03:00
Jérémy DECOOL ba2853caac Prevent target='_blank' vulnerability on dynamic link 2017-02-12 11:01:36 +01:00
Andrew Dolgov fafd32e2dc use get_self_url_prefix() when rewriting cached images 2017-02-10 15:14:47 +03:00
Andrew Dolgov dc8bd8a640 add some print_checkbox/print_button calls; rename some plugin preference pane titles 2017-02-10 14:57:25 +03:00
Andrew Dolgov 8cf37284e7 af_zz_imgproxy: add optional setting to proxy all remote images
functions: add some form helper methods
2017-02-10 14:17:18 +03:00
Andrew Dolgov 7818bfde0b sanitize: properly handle cached content in archived articles 2017-02-10 12:11:09 +03:00
Andrew Dolgov 70c0a8c2e0 pass several image files used in notify messages to frontend as base64 to prevent broken error messages in case network connection is down. also, update some close buttons to show correct cursor. 2017-02-09 23:19:26 +03:00
Andrew Dolgov 829d478f1b add some protection against opener attacks if external site is opened via window.open() 2017-02-08 15:07:05 +03:00
Andrew Dolgov 5edd605ae1 image cache: do not try to cache data: schema urls; add caching of html5 video content (similar to cache_starred_images plugin) 2017-02-04 11:50:01 +03:00
Andrew Dolgov 0442cbb6c1 image cache: send files as content-disposition: attachment; add .png suffix to image urls 2017-02-04 11:32:24 +03:00
Andrew Dolgov 24c7e4132d subscribe dialog: do not report errors via alert()
fetch_file_contents: reset all globals on start, return error message body when not using curl
subscribe_to_feed: report if cloudflare is in the error message
2017-01-28 12:45:49 +03:00
Andrew Dolgov 181c8285dd add compact theme with smaller font 2017-01-26 22:41:18 +03:00
Andrew Dolgov e432b8fbe2 implement cache-busting for default theme.css
night theme: small fixes
2017-01-25 12:17:41 +03:00
Andrew Dolgov 553ec3c351 pass article guid to hook_render_article 2017-01-25 08:50:42 +03:00
Shane Synan 311cdb27f4 sanitize: allow dfn tag
Add <dfn> tag to allowed tags list.  <dfn> represents the defining
instance of a term in HTML.
2017-01-24 18:39:17 -06:00
Andrew Dolgov 3b001e4330 support rel=noopener for links 2017-01-24 18:45:25 +03:00
Andrew Dolgov e934d63e0c fetch_file_contents: rework the way shim works to prevent intermittent warnings 2017-01-24 15:11:13 +03:00
Andrew Dolgov 67268b0017 sanitize: allow acronym tag 2017-01-24 11:36:43 +03:00
Andrew Dolgov cb3f877303 reference pubsubhubbub classes using their namespace 2017-01-23 08:20:46 +03:00
Andrew Dolgov 70c5b2bfcc feed tree: only run animation for appearing unread counters to prevent clashes with aux counter updating and animations ending up in wrong state 2017-01-22 20:20:35 +03:00
Andrew Dolgov a86255572a bump VERSION_STATIC due to Dojo changes 2017-01-22 13:55:36 +03:00
Andrew Dolgov fa287f6b11 Merge branch 'af-comics-gocomics-feed' into 'master'
Update af_comics plugin to support GoComics.

Updates the af_comics plugin to support new GoComics site, which dropped native RSS feeds.

See merge request !42
2017-01-22 11:03:45 +03:00
Andrew Dolgov 967f0619c7 force ngettext() count argument type to string 2017-01-22 10:18:43 +03:00
JustAMacUser fabfb9fc2a Added support to fetch_file_contents() to explicitly set CURLOPT_FOLLOWLOCATION. 2017-01-22 02:12:09 -05:00
Anders Kaseorg becd215a75 lib: Upgrade php-subscriber from ??? to 1213f89 (2016-11-15)
https://github.com/pubsubhubbub/php-subscriber

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2017-01-21 15:01:14 -05:00
Anders Kaseorg 5ddc3e274d lib: Upgrade php-publisher from ??? to a5d6a0e (2016-11-15)
https://github.com/pubsubhubbub/php-publisher

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2017-01-21 15:01:14 -05:00
Andrew Dolgov c606bd5741 tweak the enclosure dropdown display a little bit for less-readable urls 2017-01-17 14:04:00 +03:00
Andrew Dolgov f6bcb5c606 Merge branch 'subscribe-idn-feed' into 'master'
Subscribe to feed with Internationalized Domain Name

Currently you cannot subscribe to feeds on hosts with internationalized domain names (IDNA) within tt-rss. You need to manually convert them to punycode to subscribe to them.

This patch adds code to detect IDNA and convert them to punycode in fix_url() if possible on the system. This requires PHP IDN functions (e.g. on Debian Jessie this needs php5-intl to be installed), so a notice is added to the installer sanity check.

See merge request !37
2017-01-16 11:36:00 +03:00
Andrew Dolgov 17a8e61d2a deprecate encrypted feed passwords because mcrypt is getting removed from php 7.1
1. transparent decryption for existing installs stays for the time being
2. new passwords are not going to be encrypted even if FEED_CRYPT_KEY is defined
3. added update.php --decrypt-feeds to bulk decrypt existing encrypted passwords
4. updated install to not auto-generate crypt key
5. added warning to config.php-dist
2017-01-07 14:25:46 +03:00
Bernhard Thaler 62958fe9dc convert to punycode for feed on idn hostname 2017-01-02 22:50:26 +01:00
Andrew Dolgov 3d5d289077 set_basic_feed_info: fix typo 2016-11-30 14:09:57 +03:00
Andrew Dolgov bfe1eb4e52 rssfuncs: fix warning when trying to update nonexisting feed 2016-11-30 14:03:21 +03:00
Andrew Dolgov 12ff230bc2 maybe we shouldn't escape entry_author twice 2016-11-25 14:04:41 +03:00
Andrew Dolgov 3bba9c396f fetch_file_contents: set timeout when not using CURL 2016-10-24 16:12:18 +03:00
Andrew Dolgov e3dceca66b get_article_filters: add unicode modifier to preg_match() 2016-10-19 21:40:58 +03:00
Andrew Dolgov 6687cb9927 shared posts: remove link to feed in externally shared articles to prevent leaking potentially private feed urls 2016-09-21 09:39:31 +03:00
John Brayton 401eb0f694 Specify feed_id as an int rather than a string. 2016-08-28 20:08:37 -04:00
John Brayton f1b3b3f330 Add feed_id to subscribeToFeed response when the code is 1 or 0.
Set the API_LEVEL to 14.
2016-08-27 10:29:25 -04:00
Andrew Dolgov 557d86fe42 better debugging for matched filter rules 2016-08-26 14:45:34 +03:00
Andrew Dolgov e54eb40a8c remove support for legacy mysql driver 2016-08-21 14:03:35 +03:00
Andrew Dolgov 1a322ff3df import_export: better error message if upload failed 2016-08-19 18:14:22 +03:00
Andrew Dolgov 5cbd1fe8e4 perform housekeeping tasks for plugins loaded in user-context only 2016-08-11 15:01:01 +03:00
Andrew Dolgov 25a533c432 bump static version to 16.8 2016-08-10 09:15:52 +03:00
Andrew Dolgov 6ff51c1997 Merge branch 'more-info-article-filter' into 'master'
Pass the value of cache_images to plugins in HOOK_ARTICLE_FILTER.

Adds the `$cache_images` value to the `$article['feed']` array before calling HOOK_ARTICLE_FILTER. Allows plugins to know whether images will be cached in case they want to manage them in one way or another.

See merge request !32
2016-08-07 22:22:09 +03:00
JustAMacUser babfadbfd2 Pass the value of cache_images to plugins in HOOK_ARTICLE_FILTER. 2016-08-06 14:16:39 -04:00
JustAMacUser d8b0f06705 Remove href attribute if it executes JavaScript. 2016-08-06 14:07:30 -04:00
JustAMacUser dae16f72c9 Only strings need 4-byte filtering. 2016-07-26 03:51:22 -04:00
Andrew Dolgov 64c24ecb59 add hotkey for toggling VFEED_GROUP_BY_FEED preference 2016-07-26 15:55:00 +03:00
Andrew Dolgov e6905f7f87 test if mb_internal_encoding() is available in functions.php head 2016-07-07 10:02:55 +03:00
Andrew Dolgov 638fdf732a update_rss_feed: log warning when attempting to update unknown feed 2016-04-29 22:10:00 +03:00
Andrew Dolgov 42f78188d0 sanitize: force strip unnecessary data outside of <body>...</body> tags generated by DOMDocument::saveHTML() 2016-04-29 21:59:34 +03:00
Andrew Dolgov 977cea1438 actually check for failures properly in the dbupdater 2016-04-26 20:04:24 +03:00
Andrew Dolgov 9e84bab449 daemon common: use proper update condition checking for secondary-selected feeds 2016-04-01 18:54:53 +03:00
Andrew Dolgov c71add385d fetch_file_contents: fix shim when invoked with 1 argument only 2016-03-31 09:48:05 +03:00
Andrew Dolgov 465fb16d33 remove fetch_file_contents2, use a compat shim instead 2016-03-30 13:46:32 +03:00
Andrew Dolgov 633fb7ffe2 amend previous 2016-03-30 13:34:26 +03:00
Andrew Dolgov 79c891a8b7 set smallish timeout on update check, exclude update checking on initial load 2016-03-30 13:32:49 +03:00
Andrew Dolgov e3bc4591af add a hash-based fetch_file_contents2() 2016-03-30 13:25:32 +03:00
Andrew Dolgov 583d5b9a98 get_version: add missing substr 2016-03-28 13:26:09 +03:00
Andrew Dolgov ae397f3a91 bump version_static to 16.3 2016-03-23 22:58:33 +03:00
Andrew Dolgov 7843453c00 version: do not hardcode master branch 2016-03-23 19:08:38 +03:00
Andrew Dolgov 7c0d68f207 remove dismiss* functions 2016-03-22 10:28:34 +03:00
Andrew Dolgov 94d425fe4a rewrite_relative_url: only skip urls like magnet: instead of everything with : 2016-02-20 12:06:47 +03:00
Andrew Dolgov 7bbe94bc93 Revert "rewrite_relative_url: do not skip urls containing :"
This reverts commit a547fef6ab.
2016-02-20 12:02:34 +03:00
Andrew Dolgov a547fef6ab rewrite_relative_url: do not skip urls containing : 2016-02-20 11:57:37 +03:00
Andrew Dolgov d43b6563ef Merge branch 'master' of git.tt-rss.org:fox/tt-rss 2016-02-19 09:39:29 +03:00
JustAMacUser a01bfd78c2 Remove srcset and sizes attributes from img tag if locally caching images. 2016-02-19 01:35:11 -05:00
Andrew Dolgov cc43e19b44 error handler: do not log last query, truncate error message to a smaller length 2016-02-17 16:42:13 +03:00
Andrew Dolgov 50bda3fefb sanitize: allow <xml:namespace> (thanks, livejournal) 2016-02-05 11:31:13 +03:00
Andrew Dolgov 0edf1d0dc0 update_rss_feed: disable support for http 304 for the time being 2016-02-02 14:51:02 +03:00
Andrew Dolgov 71b75bb7fa fix multiple issues with archived feeds 2016-01-26 19:03:05 +03:00
Andrew Dolgov 0bc503ff9a update_rss_feed: escape dumped content while debugging 2016-01-23 02:17:24 +03:00
Andrew Dolgov 3b44aae0f3 sanitize: allow <description> 2016-01-23 02:17:00 +03:00
Andrew Dolgov c352248651 get_article_tags: while getting tags from cache check if article entry actually exists 2016-01-14 12:12:35 +03:00
Andrew Dolgov 312742db6e updates: auto-disable CURL if open_basedir is enabled, notify possible issues w/ plugins 2016-01-13 18:12:31 +03:00
Andrew Dolgov 393fc7d6b5 update static version 2016-01-12 16:44:14 +03:00
Andrew Dolgov 5bdcb8fd78 remove option ALLOW_DUPLICATE_POSTS as confusing/useless 2016-01-07 22:01:35 +03:00
Andrew Dolgov 4f186b1f10 fix broken article processing if ALLOW_DUPLICATE_POSTS is enabled 2016-01-07 21:49:31 +03:00
Andrew Dolgov 9b736a20b3 do not automatically call cleanup_tags() in housekeeping tasks 2016-01-04 10:42:24 +03:00
Thomas Kramer 98070db009 Update new feeds first in postgres 2015-12-31 12:54:52 +01:00
Andrew Dolgov 85d067e837 tag_is_valid: check numeric tags properly 2015-12-30 15:15:18 +03:00
Andrew Dolgov a536f94c8d sanitize: clear out @srcset/@sizes on images leading to http sites when running over https 2015-12-17 09:59:53 +03:00
Andrew Dolgov 6eed9a7463 Merge branch 'master' of git.tt-rss.org:fox/tt-rss 2015-12-07 20:07:37 +03:00
Andrew Dolgov a956648502 catchup_feed: proper fix for mysql 5.7 2015-12-07 20:07:13 +03:00
Andrew Dolgov 33d131d699 ttrss_gc: return true 2015-12-07 15:25:31 +03:00
Andrew Dolgov 040aa5408a fix previous, owner_uid not passed in daemon context 2015-12-07 15:06:32 +03:00
Andrew Dolgov a8ac766132 do not discard custom set article tags when updating from source 2015-12-07 11:54:24 +03:00
Andrew Dolgov 24e6ff5d1c calculate_article_hash: strip tags before hashing fields 2015-12-05 03:10:57 +03:00
Andrew Dolgov bfd902bbcc sanity_check: enforce minimum php version (5.4) 2015-12-04 19:03:57 +03:00
Andrew Dolgov b8619f8db0 store formatted backtrace to sql log 2015-12-04 15:58:20 +03:00
Andrew Dolgov 9bd422c2e7 set_basic_feed_info: fix missing column 2015-12-03 19:21:17 +03:00
Andrew Dolgov eed5467759 Revert "set_basic_feed_info: bail out if feed doesn't exist"
This reverts commit d77bd1a5d2.
2015-12-03 19:18:50 +03:00
Andrew Dolgov d77bd1a5d2 set_basic_feed_info: bail out if feed doesn't exist 2015-12-03 16:16:42 +03:00
Andrew Dolgov 475d762872 logger: record last query before logged error 2015-12-03 16:15:28 +03:00
Andrew Dolgov fd3e5e8da4 get_article_filters: check if action.type is set 2015-12-03 15:33:47 +03:00
Andrew Dolgov 15c0bca0e5 catchup maybe add workaround for mysql 5.7 derived_merge 2015-12-03 15:33:36 +03:00
Andrew Dolgov 01bf7f8887 update sanity_config 2015-12-01 10:11:40 +03:00
Heiko Adams b9af06802b Revert "Fix missing SESSION_CHECK_ADDRESS in config"
This reverts commit 635ecdb9fa.
2015-11-30 10:42:11 +01:00
Andrew Dolgov 19e47ad60b queryFeedHeadlines: don't check first_id when sorting by oldest first 2015-11-21 22:20:00 +03:00
Andrew Dolgov 4c46702672 drop support for (obsolete, removed from recent php versions) php safe_mode setting
remove ugly hacks for curl + open_basedir combination breaking support for http redirects
2015-11-19 20:05:17 +03:00
Andrew Dolgov 6497fb65b4 fix ttrss_feeds.last_update defaulting to 0 on mysql, set to null instead
bump schema
2015-11-18 14:33:47 +03:00
Andrew Dolgov 7475580b37 getLabelCounters: stricter ownership check 2015-11-02 14:22:37 +03:00
Andrew Dolgov 389ae94a40 iframe_whitelisted: allow player.vimeo.com 2015-10-26 20:50:44 +03:00
Andrew Dolgov 9cc29abd41 queryFeedHeadlines: int_id was not included when browsing by tag which broke several button plugins 2015-10-08 10:08:51 +03:00
Andrew Dolgov 94b8ce6cec queryfeedheadlines: remove disable_offsets hack 2015-09-15 12:33:58 +03:00
Andrew Dolgov 6b860bd9d2 recently read: limit query by last_read 2015-09-13 15:59:21 +03:00
JustAMacUser 08e79cb6b9 Fixed height/width image attributes for enclosures. 2015-08-23 13:08:48 -04:00
Andrew Dolgov c7ce438e7b hurr-durr (2) 2015-08-21 19:35:10 +03:00
Andrew Dolgov 48b23e500e Merge branch 'master' of git.fakecake.org:tt-rss 2015-08-21 19:32:07 +03:00
Andrew Dolgov b95c1e3ced hurr-durr 2015-08-21 19:31:40 +03:00
Andrew Dolgov f5e66c439e remove SESSION_CHECK_ADDRESS 2015-08-21 09:02:16 +03:00
Andrew Dolgov 978989bb7b shorten previous a bit 2015-08-18 12:04:19 +03:00
Skibbi e22e0d686c Prevent concatenating words for full text search index 2015-08-18 12:01:00 +03:00
Andrew Dolgov 961cae85a4 Merge branch 'master' of git.fakecake.org:tt-rss 2015-08-17 07:55:44 +03:00
Andrew Dolgov d5eaaa0508 curl: let's verify ssl peers 2015-08-17 07:53:50 +03:00
JustAMacUser 4a27966e78 Keep local cached images fresh if file exists.
Updates the cache_images() function to `touch` images if the file exists already. Some sites (e.g. news) re-use stock images and this change updates the local file's modified time every time the image is referenced in new articles. This should prevent the local file from being expired/deleted only to be re-cached later on.
2015-08-16 00:33:33 -04:00
JustAMacUser 8493163576 Unset $retval after HOOK_FORMAT_ENCLOSURES.
Fixes an edge case where changing the array of enclosures with HOOK_FORMAT_ENCLOSURES might break the dropdown rendering if HOOK_RENDER_ENCLOSURE has no registered hooks.
2015-08-14 19:42:30 -04:00
Andrew Dolgov 28539f6aaf search_to_sql: trim() input 2015-08-14 10:31:29 +03:00
Andrew Dolgov dcbe36b2a2 fix some remaining old-style viewfeed() calls 2015-08-13 09:51:39 +03:00
Andrew Dolgov 45913edda0 fetch_file_contents: use http/1.1 when not using curl 2015-08-12 21:51:02 +03:00
Andrew Dolgov 0acc1ed76e dijit style updates 2015-08-12 16:58:06 +03:00
Andrew Dolgov 6b0a17ad8b viewfeed: switch to hash-based arguments
viewfeed: remove (obsolete) method parameter
add shortcut to debug viewfeed() query
2015-08-12 14:09:46 +03:00
Andrew Dolgov 884ae7a941 limit recently read feed to 1 day of read headlines 2015-08-12 10:02:46 +03:00
Andrew Dolgov 7d73cc4184 minor css fixes 2015-08-12 09:28:38 +03:00
Andrew Dolgov b87744534a add plugin-based filter actions (see example plugin in attic)
bump schema
2015-08-11 23:28:42 +03:00
Andrew Dolgov 6ee255fba3 use join between user_entries and entries table 2015-08-11 20:04:38 +03:00
Andrew Dolgov c1ebb6cdf7 update notice/error css classes 2015-08-11 18:37:07 +03:00
Andrew Dolgov 6810a1de42 use dijit form widget for attachments dropdown 2015-08-11 14:53:07 +03:00
Andrew Dolgov 209ebdc644 queryfeedheadlines: only use disable_offsets hack in expanded mode 2015-08-11 09:19:47 +03:00
Andrew Dolgov 07877caf40 Revert "update: reenable first ref_id/id transaction"
This reverts commit 14ce0e2504.
2015-08-10 13:15:37 +03:00
Andrew Dolgov 14ce0e2504 update: reenable first ref_id/id transaction 2015-08-10 12:29:27 +03:00
Andrew Dolgov e07be79a8b first id query: add last_read for recently read feed 2015-08-10 12:20:01 +03:00
Andrew Dolgov dab229cd1f update_rss_feed: disable transactions for the time being 2015-08-10 12:17:49 +03:00
Andrew Dolgov 6b3160cf1e purge_feed: remove obsolete postgresql queries 2015-08-06 19:28:58 +03:00
Andrew Dolgov c7edba791c don't bother with topmost id if working with disabled offsets 2015-08-05 16:23:27 +03:00
Andrew Dolgov 0bd172cd6a experimental: if using adaptive/unread mode w/ auto catchup don't calculate offsets because we're only interested in top $limit headlines anyway 2015-08-05 10:13:30 +03:00
Andrew Dolgov 332ff5cfb8 add a very obvious speed improvement to topmost_id calculation 2015-08-04 20:38:43 +03:00
Andrew Dolgov 8f135ce3b6 bump schema 2015-08-04 13:56:31 +03:00
Andrew Dolgov 60e680599d allow selecting stemming language in search dialog 2015-08-04 13:53:48 +03:00
Andrew Dolgov df659891ac implement per-feed stemming language setting 2015-08-04 13:32:52 +03:00
Andrew Dolgov e854442e1f more fts stuff for simple index 2015-08-04 12:52:49 +03:00
Andrew Dolgov b4f544d389 add some fts stuff 2015-08-04 09:53:43 +03:00
Andrew Dolgov 3ceb893f66 add one catchall function to make uniqids/keyhashes/etc used by tt-rss 2015-08-03 19:21:06 +03:00
Andrew Dolgov 97aa917c6d smart_date_time: better eta_min handling 2015-07-18 00:01:37 +03:00
Andrew Dolgov 7680d44ef2 purge_orphans: optimize the query, maybe
https://tt-rss.org/forum/viewtopic.php?f=1&t=3417&p=20408#p20407
2015-07-15 13:29:03 +03:00
Andrew Dolgov a950fbecb5 Revert "Performance breakthrough"
This reverts commit c291685654.
2015-07-15 08:32:57 +03:00
GregThib c291685654 Performance breakthrough
Improvement in the Purge method for huge performance increase.
"WHERE ref_id IS NOT NULL" is needed by pgsql, not necessarily by mysql.
This is a more standard way to make deletions based on propagation (from ttrss_user_entries) with 1-to-N relations.
2015-07-13 12:03:50 +02:00
Andrew Dolgov f45b67c53e queryFeedHeadlines: remove filter stuff 2015-07-13 12:54:22 +03:00
Andrew Dolgov 0e4da73f06 do not allow commas in tags 2015-07-13 01:22:44 +03:00
Andrew Dolgov f56e5a3504 add workaround for fresh feed first id calculation issue 2015-07-13 00:40:15 +03:00
Andrew Dolgov f7fd1edb76 first_id default value: type is important 2015-07-12 22:54:55 +03:00
Andrew Dolgov 8831632905 add some more stuff to first_id query to fix virtual feeds 2015-07-12 22:50:21 +03:00
Andrew Dolgov d5e0486e0c minor first_id query fix 2015-07-12 18:47:06 +03:00
Andrew Dolgov 48fefe2f6b fixes for first_id stuff 2015-07-12 18:08:02 +03:00
Andrew Dolgov 83ce77a2e8 functions: fix some phpstorm-reported warnings 2015-07-12 14:07:38 +03:00
Andrew Dolgov 3444020100 report top id changed in headlines buffer 2015-07-12 12:01:34 +03:00
Andrew Dolgov f5a0fb8b64 queryFeedHeadlines: move to array-based arguments, optionally check if first element changed when paginating 2015-07-12 01:29:36 +03:00
Andrew Dolgov 9959acc87a change version_static based on y.m 2015-07-09 21:47:42 +03:00
Christian Weiske 5a4074a9f8 Check for HTML in the first 100 bytes.
Some HTML pages have an XML header (XHTML), which alone is nearly 50 bytes.
Thus we need to check for the HTML or doctype tags in the first 100 bytes.
2015-07-09 13:39:07 +02:00
Andrew Dolgov 9090b874ab simplify search, remove search_mode as useless
remove dialog to select by tags, simplify browsing by tag query
2015-07-07 15:59:32 +03:00
Andrew Dolgov e2a3689a18 sanitize: disable <hr> for now 2015-07-06 23:09:51 +03:00
Andrew Dolgov b90c4468fc sanitize: allow <hr> elements
af_redditimgur: optionally add original content using Readability php implementation
2015-07-06 22:44:43 +03:00
Andrew Dolgov 35c3735494 fix article tags/labels not assigning properly on mysql because of the 4byte unicode workaround 2015-07-06 15:32:26 +03:00
Andrew Dolgov 6bb96beb3a update_rss_feed: set basic feed info if title is [Unknown] (fixes batch subscribe) 2015-07-04 19:33:46 +03:00
Andrew Dolgov b6714c77d2 limit smart_date_time stuff to headlines only 2015-07-03 23:36:47 +03:00
Andrew Dolgov 46973af5df smart_date_time: add special case when article date is within current hour 2015-07-03 23:25:47 +03:00
Andrew Dolgov 3318d32410 move language detection to a plugin, remove config.php constant 2015-06-19 10:12:47 +03:00
Andrew Dolgov 6c9f3d4a60 update_rss_feed: limit maximum execution time while processing articles 2015-06-17 23:26:09 +03:00
Andrew Dolgov fe4535e6d3 bayes, filter: do not categorize already processed articles
rss: remove site url/title checks from update_rss_feed
2015-06-17 23:18:12 +03:00
Andrew Dolgov 6022776dac speedup feed subscription process 2015-06-17 23:11:47 +03:00
Andrew Dolgov 59e83455f1 add some more bayes stuff 2015-06-17 15:15:04 +03:00
Andrew Dolgov 35c12dc40a add workaround for mysql only accepting subset of unicode characters 2015-06-16 08:17:49 +03:00
Andrew Dolgov 6de3a1be7b allow plugins modify article score 2015-06-15 20:01:07 +03:00
Andrew Dolgov dd6e2386fd fix_url: support schema-less urls 2015-06-08 14:18:49 +03:00
Andrew Dolgov b9634eb8b8 support loading themes from themes.local 2015-06-05 18:08:19 +03:00
Andrew Dolgov 7c0a2ab202 pluginhost: allow loading user plugins from plugins.local 2015-06-05 17:54:52 +03:00
Andrew Dolgov 5078ebcc6f Merge pull request #456 from andersk/disable-feed-browser
Make _DISABLE_FEED_BROWSER also disable the updateFeedBrowser RPC
2015-05-22 08:35:45 +03:00
Anders Kaseorg 0e653f751e Make _DISABLE_FEED_BROWSER also disable the updateFeedBrowser RPC
The undocumented _DISABLE_FEED_BROWSER option added in commit
c39befacb2 turns off the UI for looking
at which feeds other users are subscribed to, but it did not prevent
you from manually constructing an RPC call to get the same data.  This
was a privacy risk for those who consider _DISABLE_FEED_BROWSER
important.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2015-05-21 23:53:58 -04:00
Andrew Dolgov 945346cbff add HOOK_RENDER_ENCLOSURE & af_youtube_embed plugin 2015-04-21 14:07:20 +03:00
Andrew Dolgov 27f7b59353 add a wrapper for standard error codes returned by backend, also add explanation to the error object if possible 2015-03-30 13:02:24 +03:00
Andrew Dolgov 755869ffbc remove unread first sorting: has issues, is pretty much adaptive anyway 2015-03-17 02:01:10 +03:00
Andrew Dolgov 51faa1150c add bg_BG entry to get_translations() 2015-03-11 15:36:45 +03:00
Andrew Dolgov 168cf351e2 add housekeeping task for orphaned counter cache entries 2015-03-06 14:14:51 +03:00
SkyREgit 95a95b0a40 Add unread category to build-in Search
unread:{true,false} - match only unread or read articles
2015-03-05 15:26:10 +02:00
Andrew Dolgov a29fe12195 add auto_assign_labels plugin; allow article filter plugins to add labels to articles 2015-03-04 00:26:52 +03:00
Andrew Dolgov 0c6f7b314a remove image.php; put cached image endpoint to public.php 2015-02-27 14:51:26 +03:00
Andrew Dolgov e6c826fa2f remove AUTO_ASSIGN_LABELS (confusing, idiots keep enable it and complain of the results) 2015-02-21 13:08:50 +03:00
Andrew Dolgov 4ca621a360 add config option CHECK_FOR_UPDATES 2015-02-03 14:46:51 +03:00
Andrew Dolgov 480b2de3b1 minor fixes for previous (2) 2015-02-03 14:43:11 +03:00
Andrew Dolgov 119ba03bd4 minor fixes for previous 2015-02-03 14:42:20 +03:00
Andrew Dolgov efcc5d365d add placeholder update checker using git changesets 2015-02-03 14:39:15 +03:00
Andrew Dolgov d498b60c6d do not subscribe new users to now obsolete releases feed 2015-02-01 22:11:06 +03:00
Andrew Dolgov ffc3a1e579 session: don't try to validate session schema version on empty sessions 2015-01-31 18:48:11 +03:00
Andrew Dolgov ed775e4e8d remove obsolete code related to version checking and tarball updater plugin 2015-01-31 15:08:55 +03:00
Andrew Dolgov 3192fb43bc do not invalidate session when version_static and user agent changes 2015-01-30 13:14:19 +03:00
Andrew Dolgov c9299c28c6 comment out old-school test trgm code 2015-01-19 12:51:59 +03:00
Anders Kaseorg bd40827b73 Drop duplicate database indexes
These duplicate indexes were found by the pt-duplicate-key-checker
tool in percona-toolkit.  Duplicate indexes waste space and slow down
the query planner.  Closes #835.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2014-12-18 02:50:03 -05:00
Andrew Dolgov d8895ec679 1.15.3 to fix tag/version mismatch 2014-12-10 21:33:18 +03:00
Andrew Dolgov 21d7585a54 disable version checking for night.css 2014-12-09 23:54:28 +03:00
Andrew Dolgov e054faa182 release 1.15.1 2014-12-09 23:51:57 +03:00
Andrew Dolgov f6cbe9a5a0 require version information in all additional themes 2014-12-09 15:16:53 +03:00
Andrew Dolgov 9b46c8e5e7 release 1.15 2014-12-08 15:02:51 +03:00
Andrew Dolgov 584411fee6 disable libxml entity loader to prevent attacks via xml external entities (fixes #833) 2014-12-08 14:49:54 +03:00
Andrew Dolgov c63850fad0 if loaded over ssl and iframe is whitelisted, set its source to https 2014-12-06 08:52:43 +03:00
Andrew Dolgov 9fd581336e fetch_file_contents: support retarded schema-less urls
af_comics_dilbert: fix for new dilbert.com shenanigans
2014-12-03 22:43:25 +03:00
tmo-github 8458a312ae Modify query to avoid a full table scan on MySQL 2014-11-27 20:04:24 +01:00
Andrew Dolgov 59b5d5f3e6 allow embedding videos from youtube and vimeo natively 2014-11-25 13:45:02 +03:00
Andrew Dolgov e44280a0bd fix typo (refs #818) 2014-11-02 20:08:58 +03:00
Andrew Dolgov 3cc02a5b88 Merge branch 'master' of github.com:gothfox/Tiny-Tiny-RSS 2014-11-02 19:37:27 +03:00
Andrew Dolgov 6383c9c53a when registering feed title, consider its maximum length (closes #818) 2014-11-02 19:36:58 +03:00
Grant Pannell da7e3e91bf Fix allow duplicate posts feature with optimizations from 1.14 2014-11-02 16:40:10 +10:30
Andrew Dolgov edccb21df0 release 1.14 2014-10-21 12:03:29 +04:00
Andrew Dolgov 229a871be7 do not force sslversion in any cases 2014-10-16 09:01:23 +04:00
Dave Zaikos 32703cc636 Added ltrim to in fetch_file_contents to fix edge cases where a URL has one or more spaces before it, which causes CURL to fail. 2014-08-22 16:44:20 -04:00
Andrew Dolgov 522e8b3500 update debugging: add force_rehash 2014-08-21 13:20:41 +04:00
Andrew Dolgov 8ef0ca2fa6 remove unused format_libxml_error 2014-08-20 12:31:10 +04:00
Andrew Dolgov ae962a96fd fix typo 2014-08-20 12:04:22 +04:00
Andrew Dolgov 05a8caddf5 Merge branch 'master' of github.com:gothfox/Tiny-Tiny-RSS 2014-08-20 12:02:06 +04:00
Andrew Dolgov fafac207c5 geturl: if head request is denied because host is still living in 20th century, try requesting body (thanks to incompetent admins of arxiv.org) 2014-08-20 12:01:41 +04:00
Jonathon Padfield 5d2e74a95e Minor refactor for php v5.3, which doens't support immediate dereferencing of array entries 2014-08-20 01:16:52 +00:00
Andrew Dolgov aa9f7d4447 get_minified_js: store and check tt-rss version in cached files 2014-08-19 14:50:25 +04:00
Andrew Dolgov 02b0348a8a mention that language passed is read only 2014-08-19 14:05:06 +04:00
Andrew Dolgov 73f9378d26 update: include detected language to article structure passed to filters 2014-08-19 14:02:28 +04:00
Andrew Dolgov 2d9c568439 add some timing information to update_daemon_common 2014-08-19 10:32:01 +04:00
Andrew Dolgov d5e490952a fix language detection; remove f_guid debugging 2014-08-19 10:18:32 +04:00
Andrew Dolgov eb16bd9f01 pass correct instance of pluginhost to calculate_article_hash 2014-08-18 23:11:29 +04:00
Andrew Dolgov af244f927e tweak article hash function 2014-08-18 21:55:48 +04:00
Andrew Dolgov b1840673cd simplify article filter chaining mechanism, do not try to process already stored articles 2014-08-18 18:32:16 +04:00
Andrew Dolgov ca6ef93259 mention english language name for Arabic 2014-08-14 12:09:16 +04:00
Andrew Dolgov c4794f39c9 Merge branch 'master' of git://github.com/asalthobaity/Tiny-Tiny-RSS into asalthobaity-master 2014-08-14 12:07:20 +04:00
asalthobaity df7419cdec Arabic translation
Revised Arabic translation and inclusion of locale in get_translations()
2014-08-14 05:16:56 +03:00
Andrew Dolgov cf0231f9d1 stored http error text in curl mode 2014-08-12 19:36:45 +04:00
Andrew Dolgov 0084f0d1ba update stored article after filter has finished processing to prevent plugins from reverting changes of earlier invoked plugins (experimental) 2014-08-12 19:36:29 +04:00
Andrew Dolgov 0d703c73bd reinstate wrongfully renamed archived feed; properly fix prefs filtertree labels for all feeds (ff5cc7d7) 2014-08-01 13:16:26 +04:00
Andrew Dolgov 1725817ac1 release 1.13 2014-07-20 10:52:37 +04:00
Felix Eckhofer 1e87193815 Add width/height attribute to image enclosures 2014-07-15 16:23:49 +02:00
Felix Eckhofer 523bd90baf Store size of enclosure to database 2014-07-15 16:23:46 +02:00
Felix Eckhofer 06c4c9ebae Update schema for size support of enclosures 2014-07-15 15:05:08 +02:00
Dave Zaikos 0c019b4436 Added curl CURLOPT_NOBODY option in geturl function to ensure the HEAD method is used when resolving permanent/temporary URL moves. 2014-06-22 01:08:57 -04:00
Andrew Dolgov 3e0f2090bf mail plugin: cleanup disabled completion, add configurable destination email list 2014-07-02 10:38:59 +04:00
Dave Zaikos a3d5018490 Updated cache_images() to use _MIN_CACHE_IMAGE_SIZE constant when checking file size. New constant is defined upon including rssfuncs.php if not already defined. 2014-06-26 17:22:59 -04:00
Bram Schoenmakers 7b3110c9c9 Fix for testing filters getting stuck sometimes.
Sometimes when testing a filter the database becomes unresponsive, stuck
in a long query.

Solution: properly join ttrss_entries and ttrss_user_entries instead of
working with their carthesian product.
2014-06-19 10:29:48 +02:00
Andrew Dolgov 1fa5c5409d catchup_feed: only mark articles as read with non-negative score in fresh feed 2014-06-10 11:39:17 +04:00
Andrew Dolgov 1f16ede01d Revert "Revert "fix unicode problem from vim""
This reverts commit 0172de4244.
2014-06-03 04:56:49 +00:00
Andrew Dolgov c2aa0593bb Revert "Revert "include new lang codes""
This reverts commit df13793f1c.
2014-06-03 04:56:40 +00:00
Andrew Dolgov df13793f1c Revert "include new lang codes"
This reverts commit e385861ca5.
2014-06-03 04:53:26 +00:00
Andrew Dolgov 0172de4244 Revert "fix unicode problem from vim"
This reverts commit f33e373e59.
2014-06-03 04:53:18 +00:00
brendan braybrook f33e373e59 fix unicode problem from vim 2014-06-02 18:40:29 +00:00
brendan braybrook e385861ca5 include new lang codes 2014-06-02 17:37:08 +00:00
wltb 01465325b4 Add subscribe hook, give more information to fetch_feed hook 2014-05-19 14:06:52 +02:00
Dave Zaikos c6ce584dd5 Changed how the enclosures array is checked for content so an empty array is not processed. Fixes a change from the previous branch commit. 2014-05-12 13:54:04 -04:00
Dave Zaikos 2bb11658a8 Added HOOK_FORMAT_ENCLOSURES plugin hook.
Runs HTML and enclosures array through a plugin hook when rendering an article's enclosures in format_article_enclosures(). Allows plugins to override handling of how enclosures are presented by either filtering the array of enclosures, or generating the HTML to add to the article content.
2014-05-12 00:59:27 -04:00
Andrew Dolgov 1fd733c8ff fetch_file_contents: do not set referrer when using curl 2014-05-09 11:33:21 +00:00