Andrew Dolgov
20af8d5caf
queryFeedHeadlines: properly define for a few more variables
2020-12-04 08:59:37 +03:00
Andrew Dolgov
1580748c17
queryFeedHeadlines: make sure feed_check_qpart is always defined
2020-12-04 08:55:26 +03:00
Andrew Dolgov
904d5f7a3b
queryFeedHeadlines: no longer select DISTINCT headlines for performance reasons (this also removes _HEADLINES_QUERY_NO_DISTINCT)
2020-12-04 08:44:43 +03:00
Andrew Dolgov
e9673eb13d
experimental: add optional _HEADLINES_QUERY_NO_DISTINCT to disable DISTINCT keyword in queryFeedHeadlines query
2020-12-03 14:42:01 +03:00
Andrew Dolgov
8089fcc762
feed editor: also show default value for purge interval
2020-11-30 15:34:15 +03:00
Andrew Dolgov
d48460969d
feed editor: show actual value of default update interval
2020-11-30 15:29:22 +03:00
Andrew Dolgov
d1ee30d1ba
prevent horizontal scrolling in filter editor dialog if rules are very long
2020-11-27 12:27:12 +03:00
Andrew Dolgov
328d7b55c8
URLHelper: fix E_DEPRECATED error related to idn_to_ascii()
2020-11-14 15:13:35 +03:00
John Aylward
01c0d4bbfd
allow audio to be sent to client from the cache
2020-11-04 14:34:37 -05:00
JustAMacUser
f782ee46ad
Fix incorrect parenthesis placement in `count()`.
2020-10-29 00:52:07 -04:00
Andrew Dolgov
f1fd5e8db1
mark feed as having an error if update task fails (and no last error is already stored for this feed)
2020-10-18 16:12:58 +03:00
Andrew Dolgov
935f163919
api: catchupfeed: allow passing 'mode' (optional), bump api version
2020-10-03 10:23:21 +03:00
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)
2020-10-01 15:59:40 +03:00
Andrew Dolgov
38a7a1da88
hide uninteresting errors in several DOMDocument->loadHTML() invocations
2020-10-01 13:20:07 +03:00
Andrew Dolgov
8a02a728c8
add DAEMON_UNSUCCESSFUL_DAYS_LIMIT tunable (defaults to 30 days)
2020-09-30 17:03:16 +03:00
Andrew Dolgov
e641547d37
set ttrss_feeds.last_successful_update as needed
2020-09-30 16:35:50 +03:00
Andrew Dolgov
15e8ee3471
housekeeping: add task to cleanup orphan feed icons
2020-09-29 12:46:55 +03:00
Andrew Dolgov
82bc740363
Logger::log - allow specifying errno
...
bump severity of PDO exception log messages to E_USER_WARNING
2020-09-29 10:08:54 +03:00
Andrew Dolgov
3b17c45887
exclude E_USER_NOTICE from recent events icon
2020-09-29 10:03:11 +03:00
Andrew Dolgov
23d20847a3
update_rss_feed: fallback to previous method if passthru() is not available
2020-09-28 21:19:53 +03:00
Andrew Dolgov
c70e26db31
validate url: feed urlencoded() URL to filter_var() only
2020-09-28 19:46:31 +03:00
Andrew Dolgov
7c8bed0524
accept -1 as a valid exit code for per-feed update processes
2020-09-28 16:02:59 +03:00
Andrew Dolgov
335dcd3bf9
don't mention last_updated in non-zero failure error message because that's not what it means
2020-09-28 08:32:14 +03:00
Andrew Dolgov
3534b8dfa7
improve logging for per-feed update task failures
2020-09-28 08:02:38 +03:00
Andrew Dolgov
74cd60d7cc
update_rss_feed: don't return as if failed on http 304
2020-09-27 17:13:36 +03:00
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
2020-09-27 16:42:45 +03:00
Andrew Dolgov
0761533d0a
lock per-feed update processes based on feed ID to reduce possibilty
...
of concurrent updates
2020-09-27 16:01:39 +03:00
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
2020-09-27 15:58:13 +03:00
Andrew Dolgov
e993d4feb2
Merge branch 'master' of git.fakecake.org:tt-rss
2020-09-25 10:04:09 +03:00
Andrew Dolgov
71e9f70b8a
search_to_sql: use per-user default language instead of hardcoded english if isn't specified explicitly
2020-09-25 10:03:42 +03:00
Andrew Dolgov
d0ed7890df
prev: add missing class
2020-09-23 13:05:00 +03:00
Andrew Dolgov
215f388992
move timestamp-related stuff to a separate class
2020-09-23 13:04:26 +03:00
Andrew Dolgov
05744bb474
fix updater never scheduling feeds for update if they never been updated before while having default update interval set
2020-09-22 20:33:51 +03:00
Andrew Dolgov
8fb2baecdc
another hack for validation of URLs with invalid characters
2020-09-22 19:56:26 +03:00
Andrew Dolgov
a897c4165b
validate URLs: convert IDN to punycode before passing URL to filter_var()
2020-09-22 15:32:22 +03:00
Andrew Dolgov
6811d0bde2
use self:: in some places to invoke static methods from the same class
2020-09-22 14:54:15 +03:00
Andrew Dolgov
b5710baf34
- don't fail on non-ascii characters when validating URLs
...
- fix IDN hostnames not being converted properly
2020-09-22 14:37:45 +03:00
Andrew Dolgov
ab6aa0ad3e
fix previous re: resolve_redirects
2020-09-22 09:18:24 +03:00
Andrew Dolgov
74568df4ff
remove a lot of stuff from global context (functions.php), add a few helper classes instead
2020-09-22 09:04:33 +03:00
Andrew Dolgov
3dd4169b5f
clarify some URL validation-related error messages
2020-09-21 20:35:24 +03:00
Andrew Dolgov
4785f21316
update_rss_feed: log effective URL after fetching
...
validate_url: treat scheme as case-insensitive
2020-09-21 20:26:57 +03:00
Andrew Dolgov
05ef9aac2f
update URL pointing to version.json
2020-09-19 07:33:59 +03:00
Andrew Dolgov
03a337a660
add basic safe mode which doesn't load any user plugins
2020-09-18 15:48:22 +03:00
Andrew Dolgov
a4525d31b2
replace FALSE with false so that static analyzer shuts up about it
2020-09-17 19:02:27 +03:00
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
2020-09-17 15:40:50 +03:00
Andrew Dolgov
37f41a5246
forgotpass: use type strict comparison for reset token
2020-09-17 11:49:27 +03:00
Andrew Dolgov
e3adacc588
fix several cases of Db class being invoked as wrong name (as DB)
2020-09-17 09:18:03 +03:00
Andrew Dolgov
89d53a7f49
fix typo in previous
2020-09-17 08:45:17 +03:00
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
2020-09-17 08:43:39 +03:00
Andrew Dolgov
9d3c794983
subscribe: allow pre-filling feed URL if passed via query string
2020-09-16 17:20:31 +03:00
Andrew Dolgov
33fdde249e
pass CSRF token to opml import and feed icon replace dialogs
2020-09-16 06:43:55 +03:00
Andrew Dolgov
42b5564d1e
editarticletags: load dialog via XHR
2020-09-15 18:47:19 +03:00
Andrew Dolgov
0706a328a4
handler: default base csrf_ignore() to false
2020-09-15 18:16:33 +03:00
Andrew Dolgov
0a142912d3
backend handler: require CSRF, remove obsolete code
2020-09-15 18:08:08 +03:00
Andrew Dolgov
154417d80b
public/logout: require valid CSRF token
2020-09-15 16:59:11 +03:00
Andrew Dolgov
cbcb10a272
Feeds: load quickaddfeed and search dialogs via XHR w/ CSRF protection
2020-09-15 16:28:09 +03:00
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
2020-09-15 16:12:53 +03:00
Andrew Dolgov
e670ac2ee5
require CSRF token for Article/redirect
2020-09-15 15:35:50 +03:00
Andrew Dolgov
7e50c6c4b5
- enable CSRF support earlier
...
- remove rpc/sanityCheck from CSRF-excluded calls
2020-09-15 15:32:17 +03:00
Andrew Dolgov
79f102c25d
af_proxy_http: never print received data directly, always redirect to cached_url
...
cache/getUrl: basename() passed filename just in case
2020-09-15 08:02:28 +03:00
Andrew Dolgov
4a074111b5
user preferences: forbid < and > characters when changing passwords (were silently stripped on save because of clean())
2020-09-14 20:53:00 +03:00
Andrew Dolgov
da98ba662e
public/subscribe: require valid CSRF token when validating the form
2020-09-14 20:21:22 +03:00
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
2020-09-14 19:46:52 +03:00
Andrew Dolgov
a922b3cc6d
order_to_override_query: allow HOOK_HEADLINES_CUSTOM_SORT_OVERRIDE plugins to override built-in sorting
2020-09-11 07:48:22 +03:00
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
2020-08-29 08:41:52 +03:00
Rodney Stromlund
88ced02622
Silence php 7.2 error message generated in `session_set_cookie_params`.
2020-08-14 10:47:46 -05:00
Andrew Dolgov
ddf9227dc4
pluginhost: allow overriding default sort modes via HOOK_HEADLINES_CUSTOM_SORT_MAP etc
2020-08-13 12:23:27 +03:00
Andrew Dolgov
dfa65e9374
move order_by to SQL override logic into a separate function
2020-08-13 11:52:32 +03:00
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
2020-08-11 13:29:09 +03:00
Andrew Dolgov
05a47e5cf4
OPML: export/import per-feed purge interval
2020-08-10 11:57:39 +03:00
Paco Esteban
c4ee0e25a1
more int/string type mismatches on getCategories
2020-08-01 16:30:10 +02:00
Paco Esteban
3da618e0ea
make sure all ints are casted (to int) on getCategories
2020-07-31 16:15:16 +02:00
fox
68b78ecd3d
Merge branch 'bugfix/invalid-opml' of wn/tt-rss into master
2020-07-01 14:48:02 +00:00
Andrew Dolgov
b6372a846d
when exporting OPML via web UI, add user login to the filename
2020-07-01 10:02:24 +03:00
Andrew Dolgov
fa653f5a43
prefs: show disabled filters properly on mysql
2020-07-01 09:49:53 +03:00
Andrew Dolgov
2996a3942f
prefs: show root of filter tree as enabled so it's not grayed out
2020-07-01 09:48:27 +03:00
wn_
614d3ac1bf
Properly check if OPML file was loaded during import.
2020-06-27 15:06:08 -05:00
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
2020-06-24 22:54:14 +03:00
Andrew Dolgov
6eb94f1e13
better support for image srcset attributes as discussed in https://community.tt-rss.org/t/problem-with-img-srcset/3519
2020-06-15 11:58:59 +03:00
Andrew Dolgov
d01ad09800
eslint-related fixes; move a few things from global context to App
2020-06-05 07:44:57 +03:00
Andrew Dolgov
c8cc845d5b
when removing favicon, reset its auto-refresh timer
2020-05-22 15:06:52 +03:00
Andrew Dolgov
06d2c65193
calculate_article_hash: don't die() on previous, woops
2020-05-17 17:44:32 +03:00
Andrew Dolgov
3a142cbf58
calculate_article_hash: ignore some useless or read-only fields (i.e. GUID) when calculating hash
2020-05-17 17:42:37 +03:00
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
2020-05-17 14:01:16 +03:00
Andrew Dolgov
7a2e9bef77
add --opml-export to update.php
2020-05-13 12:07:31 +03:00
Andrew Dolgov
c275a0cd33
DiskCache: append fake file extension when sending cached files based on mime type to make saving files easier
2020-05-12 13:28:54 +03:00
Andrew Dolgov
3a4b9249a9
DiskCache: properly deal with srcset attributes
2020-04-29 19:29:36 +03:00
Andrew Dolgov
4a00f96733
remove unneeded var_dump()
2020-04-29 11:35:02 +03:00
Andrew Dolgov
6573541873
* add HOOK_ENCLOSURE_IMPORTED
...
* pass feed id to HOOK_FEED_PARSED
2020-04-29 11:33:39 +03:00
Andrew Dolgov
44b1f0fcc0
search: add support for label:XXX search keyword
...
Labels: enforce case-insensitive lookups when creating/looking for labels
2020-04-04 14:34:08 +03:00
Andrew Dolgov
1f2a721905
allow overriding built-in templates via templates.local
2020-03-13 14:40:35 +03:00
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
2020-03-12 11:08:39 +01:00
lllusion3418
cdde23b4dc
actually download <video> posters to media cache
...
video[@poster] is already supported in the rewriting logic but never
actually downloaded
2020-03-12 11:08:33 +01:00
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
2020-03-12 11:08:24 +01:00
Andrew Dolgov
208e02c47d
PluginHost/save_data: use separate PDO connection to prevent issues with nested transactions
2020-03-10 08:14:00 +03:00
Andrew Dolgov
bcbc5ccc78
batchSubscribe: use validationtextarea
2020-02-28 14:03:29 +03:00
Andrew Dolgov
f24ece85a6
add validationtextarea control, use it for filter match editor
2020-02-28 13:53:45 +03:00
Andrew Dolgov
8645f36c5b
filter test dialog: pass contents via xhr POST
2020-02-28 12:16:54 +03:00
Andrew Dolgov
bdb1e475e7
external subscribe dialog: support dark theme
2020-02-27 13:40:32 +03:00
Andrew Dolgov
b2876f6c72
share anything dialog: support dark theme
2020-02-27 13:38:24 +03:00
Andrew Dolgov
4ab3854aed
don't generate default.css, replace with themes/light.css as a default root CSS file
2020-02-22 16:22:44 +03:00
Andrew Dolgov
5f30061c92
properly calculate marked counters for feeds in nested categories
2020-02-20 15:54:40 +03:00
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
2020-02-20 14:14:45 +03:00
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
2020-02-18 11:51:04 +03:00
Andrew Dolgov
47135160d1
getCategoryCounters: properly handle categories which don't have any stored feeds/articles
2020-01-27 15:45:04 +03:00
Andrew Dolgov
88d4324e32
mark primary button in the default password dialog
2020-01-25 13:08:29 +03:00
Andrew Dolgov
776fe4768b
default password warning: fix close button, don't crash if dialog is recreated (on feed tree reload etc)
2020-01-25 13:02:11 +03:00
Andrew Dolgov
0e9e1ad112
getCategoryUnread: return correct unread count for labels category
2020-01-25 12:53:10 +03:00
Andrew Dolgov
cdd2b6fd22
getCategoryChildrenUnread: fix typo
2020-01-25 10:00:22 +03:00
Andrew Dolgov
a6ced36189
getCategoryCounters: properly calculate counters for child subcategory entries
...
getCategoryUnread: cleanup
2020-01-25 09:57:28 +03:00
Andrew Dolgov
a64b8a7fdb
getCategoryUnread: don't return unread counters for Special category because it doesn't make a lot of sense to do so
2020-01-24 15:54:01 +03:00
Andrew Dolgov
2f6741e49a
getFeedCounters: pass parameter correctly to PDO
2020-01-24 14:27:24 +03:00
Andrew Dolgov
6080cca9ca
scrap counter cache system; rework counters to sum() booleans instead
2020-01-24 14:25:31 +03:00
Andrew Dolgov
3b29e865b0
support night mode in feed debugger
2020-01-19 10:56:49 +03:00
Andrew Dolgov
aa56bcaf44
support night mode when using share by URL
2020-01-19 10:51:08 +03:00
Andrew Dolgov
f47998f569
generate_syndicated_feed: use local media in generated feeds if it is available
2020-01-13 17:02:14 +03:00
Andrew Dolgov
b1c5ebdace
API/getVersion: don't try to use removed VERSION constant
2020-01-05 09:42:57 +03:00
Andrew Dolgov
fdb1fc7608
get_version: fix commit/timestamp lost on subsequent invocations because of misbehaving caching
2019-12-20 18:17:05 +03:00
Andrew Dolgov
72d0fac80c
remove version.php and VERSION global constant, do version-related things in a slightly less ridiculous way
2019-12-18 14:27:40 +03:00
Andrew Dolgov
df464e3d0d
update app password notice
2019-12-17 14:58:31 +03:00
Andrew Dolgov
9c0235ab66
show current unread counter on headlines toolbar if sidebar is hidden
2019-12-12 07:37:28 +03:00
Andrew Dolgov
76dd74e0d9
add a hidden tweakable which forbids changing passwords
2019-12-06 17:45:22 +03:00
Andrew Dolgov
ac95ab4a65
user css dialog: allow saving and applying CSS without closing the dialog
2019-12-06 14:02:30 +03:00
Andrew Dolgov
565547f5a1
php 7.4 deprecation-related fixes
2019-12-06 07:27:22 +03:00
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
2019-12-05 13:23:54 +03:00
Andrew Dolgov
d15f0349bf
remove hardcoded iframe domain whitelist, make iframe script whitelisting configurable by plugins (HOOK_IFRAME_WHITELISTED)
2019-11-27 11:52:51 +03:00
Andrew Dolgov
e5b7b145e5
cache media: set referrer to source URL when fetching images
2019-11-25 09:48:24 +03:00
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
2019-11-20 18:56:34 +03:00
Andrew Dolgov
8c3efd51ec
reset domain hit quota on feed update start
2019-11-17 13:17:21 +03:00
Andrew Dolgov
63ce7ea705
add a plugin page warning for plugins using HOOK_FEED_FETCHED, etc
2019-11-14 07:01:45 +03:00
Andrew Dolgov
0d7b10469b
update_rss_feed: add specific logging for HOOK_FETCH_FEED, HOOK_FEED_FETCHED, HOOK_FEED_PARSED handlers
2019-11-14 06:39:45 +03:00
Andrew Dolgov
5bb8dad631
is_gzipped: don't try to strpos() over entire buffer
2019-11-12 07:11:10 +03:00
Andrew Dolgov
f75fb6bd75
Merge branch 'master' of git.fakecake.org:tt-rss
2019-11-01 15:40:15 +03:00
Andrew Dolgov
266a805bfe
line endings + remove : from headings
2019-11-01 15:40:08 +03:00
Andrew Dolgov
05dffcff6f
OTP stuff: update notice wording a bit
2019-11-01 15:27:24 +03:00
Andrew Dolgov
812a6c9f16
auth_internal: fix indents
2019-11-01 15:25:40 +03:00
Andrew Dolgov
249130e58d
implement app password checking / management UI
2019-11-01 15:03:57 +03:00
Andrew Dolgov
68b0380118
add placeholder authentication via app passwords if service is passed
...
forbid logins via regular passwords for services
remove AUTH_DISABLE_OTP
2019-11-01 13:03:06 +03:00
Andrew Dolgov
88cd9e586e
add placeholder UI plumbing for app passwords
2019-11-01 12:23:11 +03:00
Andrew Dolgov
904ecc31e2
allow using OTP without GD
2019-11-01 10:32:58 +03:00
Andrew Dolgov
647c7c45eb
allow article filters to modify num_comments
2019-10-25 14:37:00 +03:00
Andrew Dolgov
2820f41a4b
add notification for OTP being disabled
2019-10-09 09:10:43 +03:00
Andrew Dolgov
ef514bc4bd
add notifications for mail and password changes
...
update and shorten some other message templates
2019-10-09 09:04:51 +03:00
jc
8fd11fd53a
Add const HOOK_FEED_TREE
2019-10-07 13:46:31 +00:00
jc
a243979aaf
Add const HOOK_FEED_TREE
2019-10-07 13:44:57 +00:00
Andrew Dolgov
4e05008aac
update_rss_feed: force cast initial timestamp value to integer
2019-09-30 11:41:07 +03:00
Rodney Stromlund
958c4dc124
Removed extra php end tag that was showing in the page title
2019-09-17 09:11:30 -05:00
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
2019-09-11 14:04:59 +03:00
Andrew Dolgov
94a12b9674
pass formatted entry timestamp to article filters and allow them to modify it
2019-09-11 11:43:40 +03:00
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)
2019-08-30 10:16:38 +03:00
Andrew Dolgov
12a542977e
makefeedtree: properly calculate feed total amount in no-categories mode
2019-08-21 19:32:27 +03:00
Andrew Dolgov
667836ec7c
SQL logger: log some parameters
2019-08-20 08:09:05 +03:00
Andrew Dolgov
3e4701116d
af_readability: add missing file
2019-08-16 15:29:24 +03:00
Andrew Dolgov
865c54abcb
fix get_method_url() to use correct method parameter
2019-08-15 20:27:21 +03:00
Andrew Dolgov
10c63ed582
pluginhost: add helper methods to get private/public pluginmethod endpoint URLs
2019-08-15 20:23:45 +03:00
Andrew Dolgov
e46ed1ff97
API/getHeadlines: fix order of returned feeds to be consistent with main UI
2019-08-15 19:06:38 +03:00
Andrew Dolgov
0e3b71c535
public/pluginhandler: log invalid requests
2019-08-15 17:17:25 +03:00
Andrew Dolgov
7f8946f14e
pluginhost: implement priority-based system for running hooks
2019-08-15 15:34:09 +03:00
Andrew Dolgov
5648b836aa
HOOK_ARTICLE_IMAGE: allow hooks to modify article content
2019-08-15 10:22:33 +03:00
Andrew Dolgov
75ab1f05f9
DiskCache::rewriteUrls() - remove img[@srcset]
2019-08-15 09:30:28 +03:00
Andrew Dolgov
9d852e052c
add HOOK_ARTICLE_IMAGE for Article::get_article_image()
2019-08-15 09:04:42 +03:00
Andrew Dolgov
ffb842f752
Article::get_article_image() - provide cached URLs if possible
2019-08-14 17:21:07 +03:00
Andrew Dolgov
150b040dad
Article::get_article_image() - set default to "" instead of "false"
2019-08-14 17:07:01 +03:00
Andrew Dolgov
d4df57e1a4
Article::get_article_image() - also return stream URI if possible
2019-08-14 17:04:14 +03:00
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
2019-08-14 16:55:38 +03:00
Andrew Dolgov
c34726b2b2
consistency: use DiskCache->exists() to check for present files
2019-08-14 12:52:41 +03:00
Andrew Dolgov
6914ad1f74
retire MIN_CACHE_FILE_SIZE
2019-08-14 12:44:50 +03:00
Andrew Dolgov
84974c60a7
RSSUtils::cache_media, cache_enclosures: use DiskCache
2019-08-14 12:15:56 +03:00
Andrew Dolgov
39f459eb04
public/cached_url: forbid sending files with extensions
2019-08-14 10:45:46 +03:00
Andrew Dolgov
3c075bfd21
DiskCache: more strict checking for input filenames, getUrl() is no longer static
2019-08-14 09:49:18 +03:00
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
2019-08-13 16:40:21 +03:00
Andrew Dolgov
bed695b127
DiskCache::expire: support .no-auto-expiry to prevent automatic cache maintenance
2019-08-13 14:18:14 +03:00
Andrew Dolgov
19b9b27662
expire_cached_files to DiskCache::expire()
2019-08-13 14:13:42 +03:00
Andrew Dolgov
133c2b482b
move rewrite_cached_urls to DiskCache::rewriteUrls()
2019-08-13 12:46:57 +03:00
Andrew Dolgov
b1dd38f880
add DiskCache.getUrl() and use it in a bunch of places
2019-08-13 12:39:21 +03:00
Andrew Dolgov
7602819b98
add DiskCache.send; switch af_zz_imgproxy to use DiskCache
2019-08-13 12:20:53 +03:00
Andrew Dolgov
82694bd6ce
add DiskCache.isWritable
2019-08-13 12:15:43 +03:00
Andrew Dolgov
86308b30ea
add classes/diskcache
2019-08-13 12:04:36 +03:00
Andrew Dolgov
6825aaff55
update SSL certificate wiki link
2019-08-02 08:03:20 +03:00
Andrew Dolgov
aa40a268f0
parser: support multiple dc:creator elements (returns as comma-separated list)
2019-08-02 06:22:42 +03:00
Andrew Dolgov
4edfb526e1
change version.json endpoint URL
2019-08-01 11:51:27 +03:00
Andrew Dolgov
e8523733b0
filter dialog: add inline regexp checker
2019-07-12 12:40:42 +03:00
Andrew Dolgov
86a014f23b
add placeholder Filters.filterDlgCheckRegExp
2019-07-12 10:47:18 +03:00
Andrew Dolgov
ea30061cce
public: fix share() returning random unshared articles if uuid is not given
2019-07-05 16:02:51 +03:00
Andrew Dolgov
088fcf8131
move more globals to more appropriate places
...
set libxml to always use internal errors
2019-06-20 08:40:02 +03:00
Andrew Dolgov
4fa9aee4e7
move several more global functions to more appropriate classes
2019-06-20 08:14:06 +03:00
Andrew Dolgov
6d746453c7
get_feeds_from_html: remove XML preamble hack
...
move several related helper functions to Feeds class
2019-06-20 07:51:48 +03:00
Andrew Dolgov
270b39a337
queryFeedHeadlines: support start_ts when browsing by tag
2019-06-18 13:10:32 +03:00
Andrew Dolgov
d36b64d8a7
event log: simplify styles, prevent horizontal scrolling
...
sql logger: clip context length to 8kb
2019-05-31 10:31:43 +03:00
Andrew Dolgov
905f038610
search dialog: display active query if searching already
2019-05-20 07:59:53 +03:00
Andrew Dolgov
09f520eda2
fix search query test statement stopping valid modifiers like unread: from working
2019-05-20 07:12:43 +03:00
Andrew Dolgov
de713035fd
when subscribing, check for valid html content type before checking if requested document has HTML doctype/start element
2019-05-16 10:07:22 +03:00
Andrew Dolgov
9423d72f6c
parser: force libxml error messages to valid utf8
2019-05-12 10:13:22 +03:00
Andrew Dolgov
84d43a1b44
catchup_feed: invoke HOOK_SEARCH if necessary
2019-05-07 06:57:28 +03:00
Andrew Dolgov
4b74491b8b
feed tree: set placeholder feed unread value to -1
2019-05-06 09:32:08 +03:00
Andrew Dolgov
bf5dfc444e
sql logger: ensure error string and context are valid UTF8 before trying to insert it
2019-05-01 08:38:52 +03:00
Andrew Dolgov
fda475bd93
af_readability: fix HOOK_GET_FULL_TEXT not being installed because plugin init() is called before load_data()
2019-05-01 08:12:47 +03:00
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
2019-04-30 14:39:08 +03:00
Andrew Dolgov
1cd9b3c866
prevent a fatal error on an invalid tsquery syntax
2019-04-29 21:15:49 +03:00
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
2019-04-17 08:32:35 +03:00
fox
525298569e
Merge branch 'hotkeys-focus' of suraia/tt-rss into master
2019-04-14 14:15:13 +00:00
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.
2019-04-14 12:01:52 +02:00
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
2019-04-14 06:01:09 +00:00
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.
2019-04-13 22:34:57 +02:00
Andrew Dolgov
dee1614d0a
db_prefs: return null if requested key is unset
2019-04-10 13:39:55 +03:00
Andrew Dolgov
e31e9ae04d
db_prefs: don't report missing prefs if die_on_error is false
2019-04-10 13:39:07 +03:00
Andrew Dolgov
ed22473272
feed editor: use DEFAULT_SEARCH_LANGUAGE as a default per-feed dropdown value
2019-04-10 13:08:32 +03:00
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
2019-04-10 13:03:26 +03:00
Andrew Dolgov
1a484ec3f5
feedparser: remove horrible hacks for feeds with broken encoding
2019-04-01 09:02:05 +03:00
Andrew Dolgov
656475ec78
digest text mode excerpt: use ellipsis fit for plain text
2019-03-26 08:51:36 +03:00
Andrew Dolgov
4e1eeb0488
digest text mode: fix article excerpt source
2019-03-26 08:08:50 +03:00
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
2019-03-21 21:08:02 +03:00
Andrew Dolgov
3bd3324e5a
update: add option to send digests
2019-03-21 07:44:39 +03:00
Andrew Dolgov
6ae0a3dd3e
share: further improve og:description excerpt logic, minor layout stuff
2019-03-19 20:41:38 +03:00
Andrew Dolgov
74e8661351
share: decode entities in metadata fields so that length limits would make more sense
2019-03-19 15:53:32 +03:00
Andrew Dolgov
375c4c28a0
Merge branch 'master' of git.fakecake.org:tt-rss
2019-03-16 15:35:18 +03:00
Andrew Dolgov
eab568065f
enable excerpt for text digest
2019-03-16 15:35:11 +03:00
Andrew Dolgov
33a2d5f8e4
update_rss_feed: set basic feed info if site_url is blank
2019-03-15 14:00:09 +03:00
Andrew Dolgov
019f4578bc
fix feed icon upload not working, rework form to use FormData/ajax
2019-03-14 09:08:44 +03:00
fox
95e70320a6
Merge branch 'to_combined' of suraia/tt-rss into master
2019-03-10 07:08:30 +00:00
Andrew Dolgov
241d646fba
batch subscribe: stop dialog from being submitted twice
2019-03-10 09:20:46 +03:00
Michael Kuhn
dd9e93384e
Fix to_address being logged twice
2019-03-09 20:09:16 +01:00
Andrew Dolgov
a34509c8ae
Merge branch 'master' of git.fakecake.org:tt-rss
2019-03-08 10:12:06 +03:00
Andrew Dolgov
19f162dbe3
css: insensitive -> text-muted
2019-03-08 10:11:57 +03:00
Andrew Dolgov
5373b2fe0a
hotkey help: remove more info button
2019-03-07 12:27:18 +03:00
Andrew Dolgov
a1f8322871
further update CLI schema updater layout to make it more readable
2019-03-07 06:54:05 +03:00
Andrew Dolgov
44858ca2dd
Merge branch 'master' of git.fakecake.org:tt-rss
2019-03-07 06:45:04 +03:00
Andrew Dolgov
e91223ec7d
update CLI schema updater with newer warnings
2019-03-07 06:44:59 +03:00
Andrew Dolgov
609662d48c
oops, fix typo
2019-03-06 22:48:10 +03:00
Andrew Dolgov
91cfd9c391
dbupdater: add mysql transaction warning
2019-03-06 22:46:31 +03:00
Andrew Dolgov
69a691f4e1
cleanup old feed browser cache
2019-03-06 20:12:44 +03:00
Andrew Dolgov
371325a899
remove feed editor private checkbox
2019-03-06 20:07:23 +03:00
Andrew Dolgov
0b74db5ad7
remove feedbrowser (other feeds)
2019-03-06 20:02:06 +03:00
Andrew Dolgov
0881d0a00d
some dbupdater improvements; fix schema 136 syntax for mysql
2019-03-06 19:42:27 +03:00
Andrew Dolgov
0d04e21006
updater: rollback on error
2019-03-06 19:09:28 +03:00
Andrew Dolgov
38e01270d8
archived feeds: expire old entries (schema bump)
2019-03-06 19:06:05 +03:00
Andrew Dolgov
26c226c8e4
dbupdater: catch PDO exception instead of internal errors since we're using those now; log queries while updating
2019-03-06 19:05:44 +03:00
Andrew Dolgov
6d0c9bb784
only log sent mail if _LOG_SENT_MAIL is set
2019-03-06 08:55:10 +03:00
Andrew Dolgov
16a9bdc387
make_password: generate longer passwords by default, use better random function if available
2019-03-05 20:16:50 +03:00
Andrew Dolgov
ef6d2b8a4e
update notifications to make them more visible
...
cleanup some minor stuff in pref-users
2019-03-05 20:09:06 +03:00
Andrew Dolgov
1f2c769c5a
editfeed: mark save button
2019-03-05 19:41:44 +03:00
Andrew Dolgov
614a4b3b4a
pluginhost: remove plugin gettext helpers (moved to plugin base class)
2019-03-05 10:26:23 +03:00
Andrew Dolgov
c1175070a2
add P_sprintf
2019-03-05 10:01:08 +03:00
Andrew Dolgov
b9309b1822
filters: show inverse status in list
2019-03-05 08:52:45 +03:00
Andrew Dolgov
6e920903b9
OPML:
...
1. remove unnecessary data from exported filters
2. fix import of filter rules matching on categories
2019-03-05 07:31:05 +03:00
Andrew Dolgov
5b3a73e574
login: switch to absolute redirect urls
2019-03-04 20:38:39 +03:00
Andrew Dolgov
925065b1fe
Revert "login: only allow relative URLs in return="
...
This reverts commit c68ac04020
.
2019-03-04 07:02:58 +03:00
Andrew Dolgov
6ec602e1a4
digestTest: don't display empty digest when not logged in
2019-03-04 07:00:20 +03:00
Andrew Dolgov
c68ac04020
login: only allow relative URLs in return=
2019-03-03 07:53:42 +03:00
Andrew Dolgov
cc57ed3775
public/subscribe: add basic dialog to enter feed urls
2019-03-03 06:18:19 +03:00
Andrew Dolgov
79945082b3
Merge branch 'master' of git.tt-rss.org:fox/tt-rss
2019-03-02 17:57:32 +03:00
Andrew Dolgov
da1b3e3ba1
digest: add ARTICLE_LABELS
2019-03-02 17:57:25 +03:00
Andrew Dolgov
72fcc81919
support per-plugin locale directories
2019-03-01 14:25:24 +03:00
Andrew Dolgov
a130da2d1a
add layout hack to unify heights of plugin fieldsets
2019-02-26 15:03:33 +03:00
Andrew Dolgov
8819272db1
prefs-set -> prefs
2019-02-25 19:22:20 +03:00
Andrew Dolgov
cbd119c7a3
pref-prefs: fix markup
2019-02-25 19:11:17 +03:00
Andrew Dolgov
52d77dee62
plugin list: update layout
2019-02-25 17:15:05 +03:00
Andrew Dolgov
32db1cb872
OPML: include (and import) ttrss per-feed update interval and sort order
2019-02-25 14:06:26 +03:00
Andrew Dolgov
25671ad567
logger/sql: limit maximum context length on mysql because mysql
2019-02-24 07:26:14 +03:00
Andrew Dolgov
54c1b5c611
fill in some missing doctypes; use short doctype where it wasn't
2019-02-23 13:49:40 +03:00
Andrew Dolgov
7724aa9b7c
pref-users: fix typo which stopped search from working; quote style stuff
2019-02-23 08:01:29 +03:00
fox
e72243edfd
Merge branch 'master' of DLange/tt-rss into master
2019-02-23 04:54:57 +00:00
Andrew Dolgov
dab81ff7d0
feed editor: fix missing <section> breaking checkbox fieldsets
2019-02-22 12:19:37 +03:00
Andrew Dolgov
a366da90a6
add label.inline
2019-02-22 12:13:41 +03:00
DLange
a539baece2
Fix warning after icon has successfully been moved.
2019-02-22 08:53:18 +01:00
Andrew Dolgov
a0636ccc90
Revert "Fix warning after icon has successfully been moved."
...
This reverts commit 8b73b9812d
.
2019-02-22 10:50:28 +03:00
Andrew Dolgov
e535a063ca
Merge branch 'master' of git.tt-rss.org:fox/tt-rss
2019-02-22 10:49:06 +03:00
Andrew Dolgov
335147e572
dialogs: use semantic markup instead of dlgsec stuff
...
continue unifying quoting style for html strings
2019-02-22 10:48:56 +03:00
DLange
8b73b9812d
Fix warning after icon has successfully been moved.
2019-02-22 07:25:09 +01:00
Andrew Dolgov
7dbf63693b
prefs small update
2019-02-22 06:58:06 +03:00
Andrew Dolgov
c2fa0c4416
try to organize preferences better, shorten some descriptions
2019-02-21 22:08:23 +03:00
Andrew Dolgov
4e253add8c
UI: add some more info links to relevant wiki pages; minor layout updates
2019-02-21 16:21:16 +03:00
Andrew Dolgov
c78425b386
feed edit dialog: add interval label
2019-02-21 14:05:40 +03:00
Andrew Dolgov
1dbfbcfae1
batchSubscribe: use common markup
2019-02-21 13:57:18 +03:00
Andrew Dolgov
26e57604c0
simplify layout of search and subscribe dialogs
2019-02-21 13:22:31 +03:00
Andrew Dolgov
d60038d48b
simplify some public.php prompts; prevent from submitting forgotpass form repeatedly if check succeeds
2019-02-21 12:50:15 +03:00
Andrew Dolgov
4db13b8a17
simplify preference layout, remove some unnecessary css classes
2019-02-21 12:35:40 +03:00
Andrew Dolgov
3880a17e57
pref-prefs: rework personal info tab, remove ugly table markup
2019-02-20 17:21:32 +03:00
Andrew Dolgov
580f8c0883
enlarge feed title
2019-02-20 15:13:47 +03:00
Andrew Dolgov
f8836ec080
search dialog fixes
...
pgsql: get FTS languages list from the database
2019-02-20 15:12:37 +03:00
Andrew Dolgov
063b4f535a
filter rule & label dialog updates
2019-02-20 14:58:09 +03:00
Andrew Dolgov
4d9141d762
simplify dlgSec-related markup
2019-02-20 14:37:59 +03:00
Andrew Dolgov
6701497879
public.php: markup cleanup
2019-02-20 13:12:55 +03:00
Andrew Dolgov
be322d6fc8
cleanup sharepopup dialog
2019-02-20 13:05:12 +03:00
Andrew Dolgov
d9e20f8b16
update external subscribe dialog
2019-02-20 12:32:52 +03:00
Andrew Dolgov
205a75dfb9
prefs: show phpinfo on system tab
2019-02-20 08:51:48 +03:00
Andrew Dolgov
9e7bbf6809
debugger: use narrow fieldsets for checkboxes
2019-02-19 21:24:00 +03:00
Andrew Dolgov
5ce55faa3b
installer: reduce margins; misc fixes
2019-02-19 21:23:03 +03:00
Andrew Dolgov
55d2e5871a
feed debugger: dojoify controls
2019-02-19 21:00:15 +03:00
Andrew Dolgov
420e71280a
dbupdater: dojoify, add some missing translations
2019-02-19 20:55:02 +03:00
Andrew Dolgov
f7a4a45bde
pwd reset: use dijit controls
2019-02-19 20:43:45 +03:00
Andrew Dolgov
59df261fb8
forgotpass: slightly better anti-bot protection
2019-02-19 20:25:48 +03:00
Andrew Dolgov
8cd7f31bde
utility css updates
2019-02-19 19:46:09 +03:00
Andrew Dolgov
c11f32ac38
center and rework some utility screens
2019-02-19 14:59:29 +03:00
Andrew Dolgov
13e7e775a3
update_rss_feed: mark_unread_on_update should take into account catchup filter action and entry_force_catchup
2019-02-06 22:56:14 +03:00
Andrew Dolgov
1124c3f00a
label display: fix unneeded nested container in headlines, increase overall minimalism, fix label element typo (div1)
2019-02-01 12:42:27 +03:00
Andrew Dolgov
8b26b8629f
headlines-frame: set is-vfeed attribute if result is virtual feed
2019-01-16 21:33:59 +03:00
Andrew Dolgov
b1f9ebe46e
get_article_image: ignore data: schema images, other minor fixes
2019-01-10 08:42:31 +03:00
Andrew Dolgov
eb48aa5840
mailer.php: to_address/to_name was used instead of from_address/from_name
2019-01-09 16:49:35 +03:00
Andrew Dolgov
0517b88cce
rpc, catchupfeed: return counters immediately so that frontend can figure out next unread feed correctly
2019-01-03 10:47:41 +03:00
Andrew Dolgov
734af3357d
fix user plugins not saving properly in non-default profiles
2018-12-26 22:04:35 +03:00
Andrew Dolgov
55ef85adc0
parser: clean() attribute values by default (except content)
2018-12-26 10:16:11 +03:00
Andrew Dolgov
949bfa3457
add minor clean()-ing on some rss feed values
2018-12-26 09:58:28 +03:00
Andrew Dolgov
e70d42237a
edit options after subscribe: use correct method name
2018-12-25 16:22:12 +03:00
Andrew Dolgov
4729bdb132
queryFeedHeadlines: fix published field not returned when browsing by tag
2018-12-25 16:19:42 +03:00
Andrew Dolgov
215c9f0f88
fail better if Feeds.view() data failed encoding to JSON
2018-12-24 12:28:11 +03:00
Andrew Dolgov
eedd402807
rssutils: don't gzdecode() stuff
2018-12-21 17:52:41 +03:00
Andrew Dolgov
a5517fe857
fetch_file_contents: decompress gzipped data
...
af_readability: remove utf8 preamble hack
2018-12-21 17:50:16 +03:00
Andrew Dolgov
7867f3efa4
prepare_headlines_digest: do not use PDO constants by reference
2018-12-21 08:26:03 +03:00
Andrew Dolgov
51b069a1ee
display filter tree rules as a list
2018-12-19 12:08:06 +03:00
Andrew Dolgov
5f1b39f7dc
filter tree: don't crash on search, also search by filter titles
2018-12-19 09:04:04 +03:00
Andrew Dolgov
59d1fd481d
mailer: set utf-8 content type
2018-12-17 11:55:21 +03:00
Andrew Dolgov
5c481fb249
rpc/checkforupdates: restrict to administrative access level
2018-12-16 19:08:41 +03:00
Andrew Dolgov
957c44d177
rework git update checking to be initiated by frontend, outside of runtime info output
2018-12-16 19:05:37 +03:00
Andrew Dolgov
b66deb3240
rpc/getAllCounters: return seq
2018-12-15 13:17:51 +03:00
Andrew Dolgov
8c49689fda
filter test results: remove table bloat
2018-12-14 17:44:53 +03:00
Andrew Dolgov
958fbfedb6
rssutils: check if returned data is in gzip format before trying to decode it
2018-12-14 14:55:36 +03:00
JustAMacUser
4b2f3039d2
Properly report filter plugin time (re-fixes PR 98).
2018-12-12 21:30:16 -05:00
Andrew Dolgov
d53cdaf815
requestCounters: remove cooldown
2018-12-12 20:06:44 +03:00
JustAMacUser
53602096b9
Fixed misplaced bracket.
2018-12-12 11:47:36 -05:00
Andrew Dolgov
eda4ac2a2b
add fallback colors for headline feed titles based on feed name if favicon color is not available
2018-12-12 07:57:37 +03:00
Andrew Dolgov
b6a021461d
add night_base so that output files would generate properly, etc
2018-12-11 21:06:02 +03:00
Andrew Dolgov
be49b77b14
Revert "use codeflask for user css editor"
...
This reverts commit daa43e0572
.
2018-12-11 20:48:17 +03:00
Andrew Dolgov
66d3dcbc7d
update user css info line
2018-12-11 14:31:07 +03:00
Andrew Dolgov
daa43e0572
use codeflask for user css editor
2018-12-11 14:25:41 +03:00
Andrew Dolgov
f3c04fc5d8
sync modified scores via mutation observer
2018-12-11 10:30:32 +03:00
Andrew Dolgov
25ca144bb7
score: get correct classes for rows/score icons on the client
2018-12-11 10:00:54 +03:00
Andrew Dolgov
93dfdb2fcd
exp: tweak headline label styles
2018-12-10 21:39:12 +03:00
Andrew Dolgov
96fccefa62
update hotkey help dialog a bit
2018-12-10 08:37:24 +03:00
Andrew Dolgov
d0d05e4079
zoom mode: hide .attachments
2018-12-10 07:20:13 +03:00
Andrew Dolgov
a5813bb766
mysql: use date_format() for yyiw part in queryFeedHeadlines()
2018-12-09 20:38:02 +03:00
Michael Kuhn
3484ad2aaf
Use IYYY in combination with IW
...
Otherwise, we could end up with a wrong date, see:
https://community.oracle.com/thread/997899
2018-12-09 18:28:15 +01:00
Andrew Dolgov
6a6af964df
feed template, ARTICLE_OG_IMAGE: set as optional
2018-12-09 17:18:29 +03:00
Andrew Dolgov
851f62dc4a
syndicated feeds:
...
1. properly reset enclosure template variables if there's no enclosures
2. add ARTICLE_OG_IMAGE which sets flavor image for article using common code with article render etc
2018-12-09 17:07:17 +03:00
Andrew Dolgov
607ede512f
center previously centered text on single line dialog panels
2018-12-09 16:27:29 +03:00
Andrew Dolgov
fa538a6c86
implement year-week sorting window if headlines buffer is grouped by feed titles
2018-12-09 13:35:37 +03:00
Andrew Dolgov
703351c79e
remove theme supports-version etc checking
2018-12-09 11:37:26 +03:00
Andrew Dolgov
b2c079893b
move Article::format_article() to Handler_Public
2018-12-09 11:13:02 +03:00
Andrew Dolgov
966fe6d612
#sharepopup: update css
2018-12-09 10:56:39 +03:00
fox
9545fc6c84
Merge branch 'fix-ambiguous-id' of chtitux/tt-rss into master
2018-12-09 01:29:08 +00:00
Andrew Dolgov
8f5b5ae09e
if not enabled, set content_preview to "" instead of null
2018-12-09 04:24:48 +03:00
Théophile Helleboid - chtitux
c70dc852a1
Be explicit when id column is ambiguous
2018-12-08 22:36:03 +01:00
Andrew Dolgov
f3737c0b24
update_rss_feed: add log message if article is filtered out
...
combine filters: fix crash on missing global function
2018-12-08 17:01:30 +03:00
Andrew Dolgov
bd66a9ef28
render article on the client using headlines data
2018-12-08 09:32:14 +03:00
Andrew Dolgov
41e967136f
format headlines list: normalize booleans for pdo mysql
2018-12-08 08:23:18 +03:00
Andrew Dolgov
4e06b94f76
format_article_enclosures: i don't think we need so many <hr>s
2018-12-07 23:22:30 +03:00
Andrew Dolgov
811e1514a3
remove uuid from headlines JSON output
2018-12-07 22:14:32 +03:00
Andrew Dolgov
3b7a9219f6
viewfeed: cleanup unneeded stuff from server JSON output
2018-12-07 21:52:41 +03:00
Andrew Dolgov
76885fc5ad
viewfeed: general code cleanup
2018-12-07 21:22:51 +03:00
Andrew Dolgov
8f75b06835
implement feed grouping display, remove unneeded server vgrlf passing
2018-12-07 21:11:50 +03:00
Andrew Dolgov
0b84d1d0dc
viewfeed: add orig_feed object
2018-12-07 18:38:27 +03:00
Andrew Dolgov
95f63e121a
note that HOOK_FORMAT_ARTICLE_CDM is dead for now
2018-12-07 18:35:50 +03:00
Andrew Dolgov
e075e6141b
json-viewfeed updates
2018-12-07 18:24:56 +03:00
Andrew Dolgov
249c93a228
initial for js templates
2018-12-07 16:00:11 +03:00
Andrew Dolgov
a68b150601
remove separate classes for various panels, unify under .panel
...
remove a few other unnecessary css classes/ids
2018-12-07 14:03:33 +03:00
Andrew Dolgov
4fdcc923f0
prefs: reload on user theme change
2018-12-07 10:35:46 +03:00
Andrew Dolgov
1e3a53c037
do not try to update filter triggers if nothing was triggered (properly this time)
2018-12-06 23:12:20 +03:00
Andrew Dolgov
5780a5d501
do not try to update filter triggers if nothing was triggered
2018-12-06 23:05:02 +03:00
Andrew Dolgov
4cbc62d2a5
article note format updates
2018-12-06 20:55:51 +03:00
Andrew Dolgov
3e4326e34d
add ttrss_filters2.last_triggered (bump schema version)
2018-12-06 19:37:20 +03:00
Andrew Dolgov
a01c33d654
add HOOK_FILTER_TRIGGERED (for filter debugging)
2018-12-06 19:15:00 +03:00
Andrew Dolgov
e9cf8e8e35
normalize archived articles output in headlines
2018-12-06 19:00:11 +03:00
Andrew Dolgov
369bac525b
simplify zoom mode display
2018-12-06 16:42:21 +03:00
Andrew Dolgov
26c074ed7e
rework article header to use flexbox
2018-12-06 16:35:57 +03:00
Andrew Dolgov
b4c2b26822
remove collapse.png
2018-12-06 15:28:11 +03:00
Andrew Dolgov
0b8cbc9156
remove some bitmaps and rework stuff using it to use iconfont instead
2018-12-06 15:22:52 +03:00
Andrew Dolgov
15d05e8a26
night.css: do not import default less theme statically
...
remove themes/default.php (not needed)
compact.css: fixes
2018-12-06 14:49:33 +03:00
Andrew Dolgov
d2d2cb7e7d
rework scoring display, JS processing and icons
2018-12-06 14:23:45 +03:00
Andrew Dolgov
8b2286305e
and again
2018-12-06 13:18:14 +03:00
Andrew Dolgov
1de1426114
Revert "change fresh feed icon"
...
This reverts commit 69da55b945
.
2018-12-06 13:16:53 +03:00
Andrew Dolgov
69da55b945
change fresh feed icon
2018-12-06 13:13:25 +03:00
Andrew Dolgov
4aa11fe78d
set some alt-info buttons; fix missing default submit for create filter dialog
2018-12-06 13:04:39 +03:00
Andrew Dolgov
814e49f8f7
add icons to accordion panels in preferences
...
fix typo in pref-prefs closing panel tag
2018-12-06 08:56:28 +03:00
Andrew Dolgov
fd10614f5d
labels: unfortunately we can't rely on caption to selectively clear label_cache (because of json unicode encoding) so clean it completely if label is updated
2018-12-06 08:29:32 +03:00
Andrew Dolgov
0a41c1a6e1
update label rendering (and editor)
2018-12-06 08:26:52 +03:00
Andrew Dolgov
19e24b4fe2
force cast profile id to integer when assigning to session variable
2018-12-06 07:08:54 +03:00
Andrew Dolgov
c700345c96
trgm: use vector icon, replace recently read icon
2018-12-05 22:48:14 +03:00
Andrew Dolgov
a0b1664620
prefs: change user icon
2018-12-05 21:40:46 +03:00
Andrew Dolgov
cad6d1d7fd
various icon updates; use new icons in feed tree
2018-12-05 20:26:27 +03:00
Andrew Dolgov
8c5c762a85
some more icon styling updates + user control panel
2018-12-05 16:58:00 +03:00
Andrew Dolgov
f3e6e12d46
various minor updates re: icons
2018-12-05 16:48:29 +03:00
Andrew Dolgov
b16c57d29c
replace plugin.png with scalable icon
2018-12-05 16:37:09 +03:00
Andrew Dolgov
a0778577ac
remove pub_{set,unset}.png usage in main code
2018-12-05 14:18:03 +03:00
Andrew Dolgov
cbd7328cb4
minor fixes to pub/mark icons etc
2018-12-05 14:11:40 +03:00
Andrew Dolgov
b65d8384c2
update headlines to use vector icons
2018-12-05 13:58:18 +03:00
Andrew Dolgov
89b213b4bb
initial for material-icons
2018-12-05 10:50:50 +03:00
Andrew Dolgov
edd348b16c
rework not-cdm headline rows to use flex-box
2018-12-05 09:08:02 +03:00
Andrew Dolgov
88c2da72d5
combined mode: use flex-box for header/footer layout
2018-12-05 08:31:13 +03:00
Andrew Dolgov
2621180b54
in three panel mode, attach context menu to the title, instead of entire headlines row
2018-12-05 07:34:16 +03:00
Andrew Dolgov
29c890b495
login form: use dojo, remove profile hacks
2018-12-04 23:17:35 +03:00
Andrew Dolgov
2ab097b2e5
initial work for flat modern theme
2018-12-04 22:24:31 +03:00
Andrew Dolgov
6befff30d7
updates for flat theme (mostly disable old dijit overrides)
2018-12-04 19:03:42 +03:00
Andrew Dolgov
f81df37c36
wrap plugin list into border container, like prefs (2)
2018-12-04 15:33:20 +03:00
Andrew Dolgov
0880100f6a
wrap plugin list into border container, like prefs
2018-12-04 15:31:21 +03:00
Andrew Dolgov
31e79317b3
normalize various font sizes and families between prefs & main UI
...
change some dialogs layout a bit to maybe become more readable
2018-12-04 15:22:22 +03:00
Andrew Dolgov
0b8fef8262
combined unexpanded: respect 'SHOW_CONTENT_PREVIEW' preference
2018-12-04 10:47:50 +03:00
Andrew Dolgov
197e80add6
fix several issues related to profile being set to a non-numeric value
2018-12-04 10:47:01 +03:00
Andrew Dolgov
27b93988e7
add placeholder loading indicator to CDM entries
...
restore missing "originally from" for archived articles
2018-12-03 20:05:11 +03:00
Andrew Dolgov
e76d1fb995
plugins: mail, mailto: remove code from global context
2018-12-03 14:21:50 +03:00
Andrew Dolgov
4d4034091a
prefs: Prefs global -> Helpers
2018-12-03 12:46:00 +03:00
Andrew Dolgov
b3bc638a9f
refactor OPML export/import code to be less horrible
2018-12-03 12:26:49 +03:00
Andrew Dolgov
78cc470193
remove some plugin JS code out of global context
2018-12-03 10:51:14 +03:00
wn_
6f9307aa9a
Also fix the 'Create label' `onclick`
2018-12-02 16:15:31 -06:00
wn_
6100392bd5
Fix an `onclick` (`Article.editArticleTags` --> `Article.editTags`)
2018-12-02 16:02:03 -06:00
Andrew Dolgov
5ead558e43
move Utils to AppBase where it belongs
2018-12-02 22:08:18 +03:00
Andrew Dolgov
eeb49d375c
uploadIconHandler -> CommonDialogs
2018-12-02 20:57:51 +03:00
Andrew Dolgov
526389b2d3
update notify_* calls to use Notify
2018-12-02 20:56:30 +03:00
Andrew Dolgov
d9c5c93cef
move some more stuff out of common.js
...
rework client-side cookie functions a bit
limit dojo cachebust based on server scripts modification time
remove param_escape()
2018-12-02 20:07:57 +03:00
Andrew Dolgov
ad1b6f0a86
bring back excerpts in unexpanded mode
2018-12-02 19:04:53 +03:00
Andrew Dolgov
3a6dae9203
prefs: more of the same, really
2018-12-02 16:29:00 +03:00
Andrew Dolgov
b9869dbc01
prefs: remove some more stuff from global context (user management, etc)
2018-12-02 16:17:36 +03:00
Andrew Dolgov
58e54282d3
prefs: move more global functions into matching classes
2018-12-02 15:30:07 +03:00
Andrew Dolgov
f26d404890
prefs: move other tree-related functions to respective trees
2018-12-02 12:03:28 +03:00
Andrew Dolgov
60cd467694
embed some pref-feed helper functions into the tree
2018-12-02 11:50:53 +03:00
Andrew Dolgov
2e985d1733
move some label helper functions to prefLabelTree
2018-12-02 11:34:57 +03:00
Andrew Dolgov
e23b6e397d
prefs: store active tab for reload, remove most old table row functions
2018-12-02 11:25:32 +03:00
Andrew Dolgov
874560db54
remove obsolete row selection functions
...
move getUrlParam() to Utils
2018-12-02 10:33:58 +03:00
Andrew Dolgov
2f85b50e36
remove toggleSelectListRow2()
2018-12-02 10:16:25 +03:00
Andrew Dolgov
0a18d0b1ed
Feeds: shorten some method names
...
finally rename "view as rss"
2018-12-02 08:57:22 +03:00
Andrew Dolgov
6e625555c9
Headlines: shorten selectArticles
2018-12-02 08:34:08 +03:00
Andrew Dolgov
3678315bea
Article, Headlines: shorten several method names
2018-12-02 08:32:13 +03:00
Andrew Dolgov
1e2d4410d3
move some more shared stuff to CommonDialogs, Filters, and Utils
2018-12-01 22:39:29 +03:00
Andrew Dolgov
cc26be0793
migrate tt-rss.js contents to App
2018-12-01 21:51:00 +03:00
Andrew Dolgov
ab0fadf60d
fix vfeed group title CSS in not combined mode
2018-12-01 21:08:15 +03:00
Andrew Dolgov
642c37ea61
further effocts to wrap JS stuff into objects
2018-12-01 21:01:53 +03:00
Andrew Dolgov
4bed9be57d
js-ification: start on some common dialogs
2018-12-01 18:25:32 +03:00
Andrew Dolgov
97df81d8d9
even more objectification of JS
2018-12-01 17:54:16 +03:00
Andrew Dolgov
d86ddbc635
further objectification of JS code
2018-12-01 17:21:26 +03:00
Andrew Dolgov
049a37aa0e
WIP reshuffling of JS global context into separate logical objects
2018-12-01 17:05:35 +03:00
Andrew Dolgov
195180b64d
minor refactoring: normalize some function names; cleanup; etc
2018-12-01 11:18:35 +03:00
Andrew Dolgov
8d190d539b
CLI tools: fix --quiet not working if --log is unset
2018-12-01 10:05:26 +03:00
Andrew Dolgov
a2ef54cd92
toggleMark, togglePub: refactor implementation
...
shorten marked/published img CSS classes
2018-12-01 08:20:09 +03:00
Andrew Dolgov
5aa9c60494
bring back (debloated) version of unexpanded combined mode
2018-12-01 01:03:01 +03:00
Andrew Dolgov
2e01a1d41d
css updates; night theme fixes for changed CSS classes
2018-11-30 17:42:38 +03:00
Andrew Dolgov
07fd4f8d9d
minor css fixes (mostly for zoom mode)
2018-11-30 17:22:30 +03:00
Andrew Dolgov
add558e7e5
rework some styles related to three panel mode
2018-11-30 15:54:38 +03:00
Andrew Dolgov
8359ca6dad
combined mode (and more) css class name updates
2018-11-30 15:48:17 +03:00
Andrew Dolgov
5f211e37a4
remove FTITLE- id
2018-11-30 14:53:58 +03:00
Andrew Dolgov
67cdf4cf12
remove some unnecessary element IDs
...
rework plugins/note to use xhrJson()
2018-11-30 14:39:06 +03:00
Andrew Dolgov
b9585004e6
packed headlines: no point in using JSON here
2018-11-30 13:56:33 +03:00
Andrew Dolgov
7673331850
headlines: remove collapseBtn
2018-11-30 13:53:58 +03:00
Andrew Dolgov
9563e3bcd6
remove expandable CDM headlines
2018-11-30 13:51:54 +03:00
Andrew Dolgov
c8c9a26f30
move to simpler CDM handling of encoded content (instead of CENCW... etc)
2018-11-30 13:26:41 +03:00
Andrew Dolgov
ef129fed2a
some more xhrPost refactoring (batchEditSave WIP)
2018-11-30 10:48:50 +03:00
Andrew Dolgov
fc0a3050eb
use xhrPost is even more places!
2018-11-30 09:23:51 +03:00
Andrew Dolgov
3ad9944d5e
fix missing sprintf() argument
2018-11-30 09:19:00 +03:00
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