Andrew Dolgov
d7127cead3
feed debugger: use hidden helpers; add button helpers
2021-02-16 14:42:27 +03:00
Andrew Dolgov
26d6b84a57
add namespaced controls with unified naming; deprecated old-style control shortcuts
2021-02-16 14:23:00 +03:00
Andrew Dolgov
88f7c4f1a5
feeds/view: fix php8 warning
2021-02-16 10:11:58 +03:00
Andrew Dolgov
9f55454f63
remove the rest of db.php; rename some leftover methods in feeds
2021-02-15 16:51:35 +03:00
Andrew Dolgov
166f2d4666
diskcache: unify naming
2021-02-15 16:11:30 +03:00
Andrew Dolgov
257efb43c6
article: unify naming
2021-02-15 15:52:28 +03:00
Andrew Dolgov
020f062a76
feeds: unify naming
2021-02-15 15:43:07 +03:00
Andrew Dolgov
6b006a18e7
subscribe to feed: use client dialog
2021-02-15 15:21:41 +03:00
Andrew Dolgov
82adb01307
render enclosures on the client
2021-02-15 14:10:46 +03:00
Andrew Dolgov
9f31381bb6
renderToolbar: support empty data i.e. dashboard feed
2021-02-15 07:46:24 +03:00
Andrew Dolgov
a2e688fcb2
render headline-specific toolbar on the client
2021-02-14 22:17:13 +03:00
Andrew Dolgov
15fd23c374
use shortcut echo syntax for php templates
2021-02-14 09:15:51 +03:00
Andrew Dolgov
bf6d0f2817
various dialog-related fixes; stop referring to many dialogs by name; move filter test initial dialog to client side
2021-02-12 10:35:13 +03:00
Andrew Dolgov
72e38bfe1f
rework a few more dialogs to use App.dialogOf()
2021-02-12 09:56:27 +03:00
Andrew Dolgov
4182018cb7
generated feed: use client dialog
2021-02-11 22:04:39 +03:00
Andrew Dolgov
7ae0e8d9c5
rewrite some more hooks in classes/feeds
2021-02-08 23:10:22 +03:00
Andrew Dolgov
345dbb3521
rewrite some more hooks
2021-02-08 22:46:01 +03:00
Andrew Dolgov
b6e1a5c91a
fix several warnings reported by phpstan
2021-02-06 17:19:07 +03:00
Andrew Dolgov
5849a39820
af_redditimgur: don't try to load empty html; fix a warning in update debugger
2021-02-06 10:31:06 +03:00
Andrew Dolgov
403dca154c
initial WIP for php8; bump php version requirement to 7.0
2021-02-05 23:41:32 +03:00
Andrew Dolgov
da0ad82c24
Archive cleanup:
...
- remove code to manually archive/unarchive articles
- remove ttrss_archived_feeds/orig_feed_id handling - the whole thing was implemented for
this data to be kept indefinitely; it doesn't make a lot of sense to deal with this stuff
now that it is expired after one month anyway (same reasons as feed browser being removed - privacy)
- remove "originally from"-related stuff because of the above
- also remove unused remaining frontend/backend code related to feed browser (rip)
2021-01-17 14:55:11 +03:00
Andrew Dolgov
25520e9784
Select... dropdown: replace dijit Select with DropDownButton, simplify layout
...
PluginHost: add HOOK_HEADLINE_TOOLBAR_SELECT_MENU_ITEM
Headlines.onActionChanged: removed
2021-01-17 11:27:07 +03:00
Andrew Dolgov
bc0d50e892
remove show as feed from Select dropdown in main toolbar
2021-01-17 10:43:29 +03:00
Andrew Dolgov
b2993bcd30
remove menu options to manually un/archive articles
2021-01-17 10:37:40 +03:00
Andrew Dolgov
5f733604f0
purge_feed: limit debugging to LOG_VERBOSE
2020-12-20 23:11:26 +03:00
Andrew Dolgov
b4b2ba99ef
purge_feed: shorten one log message
2020-12-15 09:43:59 +03:00
Andrew Dolgov
f05f9b4252
purge_feed: add more debugging output
2020-12-15 08:50:01 +03:00
Andrew Dolgov
83962a8561
feed debugger: allow setting log level to LOG_EXTENDED
2020-12-12 22:17:23 +03:00
Andrew Dolgov
71c8d8d365
queryFeedHeadlines:
...
- there should be no need for DISTINCT query when checking for first id
- fix DISTINCT query part being undefined when browsing by tags
- add query debugging for tags
2020-12-08 17:01:19 +03:00
Andrew Dolgov
d06cc8267b
queryFeedHeadlines: bring back DISTINCT for a limited set of columns
2020-12-07 16:59:48 +03:00
Andrew Dolgov
db3fcb861b
viewfeed: reintroduce timestamps, fix debugging, fix some indents
2020-12-04 18:55:53 +03:00
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
38a7a1da88
hide uninteresting errors in several DOMDocument->loadHTML() invocations
2020-10-01 13:20:07 +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
215f388992
move timestamp-related stuff to a separate class
2020-09-23 13:04:26 +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
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
a4525d31b2
replace FALSE with false so that static analyzer shuts up about it
2020-09-17 19:02: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
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
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
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
d01ad09800
eslint-related fixes; move a few things from global context to App
2020-06-05 07:44:57 +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
5f30061c92
properly calculate marked counters for feeds in nested categories
2020-02-20 15:54:40 +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
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
9c0235ab66
show current unread counter on headlines toolbar if sidebar is hidden
2019-12-12 07:37:28 +03:00
Andrew Dolgov
565547f5a1
php 7.4 deprecation-related fixes
2019-12-06 07:27:22 +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
133c2b482b
move rewrite_cached_urls to DiskCache::rewriteUrls()
2019-08-13 12:46:57 +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
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
84d43a1b44
catchup_feed: invoke HOOK_SEARCH if necessary
2019-05-07 06:57:28 +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
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
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
19f162dbe3
css: insensitive -> text-muted
2019-03-08 10:11:57 +03:00
Andrew Dolgov
0b74db5ad7
remove feedbrowser (other feeds)
2019-03-06 20:02:06 +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
a366da90a6
add label.inline
2019-02-22 12:13:41 +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
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
26e57604c0
simplify layout of search and subscribe dialogs
2019-02-21 13:22:31 +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
4d9141d762
simplify dlgSec-related markup
2019-02-20 14:37:59 +03:00
Andrew Dolgov
9e7bbf6809
debugger: use narrow fieldsets for checkboxes
2019-02-19 21:24:00 +03:00
Andrew Dolgov
55d2e5871a
feed debugger: dojoify controls
2019-02-19 21:00:15 +03:00
Andrew Dolgov
8cd7f31bde
utility css updates
2019-02-19 19:46:09 +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
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
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
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
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
fa538a6c86
implement year-week sorting window if headlines buffer is grouped by feed titles
2018-12-09 13:35:37 +03:00
Andrew Dolgov
8f5b5ae09e
if not enabled, set content_preview to "" instead of null
2018-12-09 04:24:48 +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
811e1514a3
remove uuid from headlines JSON output
2018-12-07 22:14:32 +03:00