Andrew Dolgov
05f690c86b
add a separator before HEADLINES_NO_DISTINCT
2021-02-26 10:22:04 +03:00
Andrew Dolgov
f3d4bae32e
add an option to disable DISTINCT on headlines query (unless it's Labels category)
2021-02-26 09:57:34 +03:00
Andrew Dolgov
dcf0135285
logger: shorter syntax
2021-02-25 15:49:30 +03:00
Andrew Dolgov
1464abbbfc
prefs cleanup
2021-02-25 14:59:02 +03:00
Andrew Dolgov
c96172fa04
use constants in get_pref()/set_pref()
2021-02-25 14:49:58 +03:00
Andrew Dolgov
5aa05c90e1
pref-prefs: use constants instead of hardcoded strings
2021-02-25 14:45:11 +03:00
Andrew Dolgov
6f02b1afd0
cleanup a bunch of old prefs code
2021-02-25 14:25:37 +03:00
Frenck Lutke
2f2642bbd4
add fallback for feed_language on edit-feed-saving
...
Feed_language is only included in the form if running on pgsql, failing
the not null constraint on mysql setups.
2021-02-25 12:06:25 +01:00
Andrew Dolgov
bd2314170d
implement prefs UI based on new prefs class and a few more things
2021-02-25 12:46:13 +03:00
Andrew Dolgov
988eb3ac91
initial (wip) for new prefs
2021-02-25 09:33:36 +03:00
Andrew Dolgov
2f14fa1bc3
add a hack to position labels on a dijit toolbar better
2021-02-24 15:53:47 +03:00
Andrew Dolgov
8d2e3c2528
drop errors.php and simplify error handling
2021-02-23 22:26:07 +03:00
Andrew Dolgov
2ae0b7059f
cleanup some defined-stuff
2021-02-23 09:01:27 +03:00
Andrew Dolgov
211f699aa0
migrate the rest into Config::
2021-02-22 22:35:27 +03:00
Andrew Dolgov
e4107ac952
wip: initial for config object
2021-02-22 21:47:48 +03:00
Andrew Dolgov
be4e7b1340
fix several issues reported by phpstan
2021-02-22 14:41:09 +03:00
Andrew Dolgov
f6bfb89b29
pref-prefs: switch to new control shorthand in a few places
2021-02-21 23:18:32 +03:00
Andrew Dolgov
861a632ac7
move published opml JS code to pref helpers
2021-02-21 18:04:44 +03:00
Andrew Dolgov
521d0b65c7
batch feed editor: use tab layout, cleanup
2021-02-21 16:02:57 +03:00
Andrew Dolgov
d1328321be
move published OPML endpoint to public.php
2021-02-21 15:16:39 +03:00
Andrew Dolgov
2843b99171
minor filter UI layout fix
2021-02-21 13:08:34 +03:00
Andrew Dolgov
810afdaf5a
prevent creation of filter rules matching no feeds
2021-02-21 12:28:25 +03:00
Andrew Dolgov
3b8d69206c
deal with filter actions UI
2021-02-21 10:28:59 +03:00
Andrew Dolgov
94560132dd
for the most part, deal with filter rules UI
2021-02-21 09:35:07 +03:00
Andrew Dolgov
b4e96374bc
more filter stuff
2021-02-20 21:48:05 +03:00
Andrew Dolgov
590b1fc39e
a few more methods shuffled around
2021-02-20 18:21:36 +03:00
Andrew Dolgov
be91355c20
first for filter frontend overhaul
2021-02-20 18:15:08 +03:00
Andrew Dolgov
22fe9b54d2
feed editor: use client dialog
2021-02-20 13:32:09 +03:00
Andrew Dolgov
9586c72a17
wip: feed editor client-side
2021-02-20 10:26:09 +03:00
Andrew Dolgov
660a1bbe01
* switch to xhr.post() almost everywhere
...
* call App.handlerpcjson() automatically on json request (if possible)
* show net/log indicators in prefs
2021-02-19 13:44:56 +03:00
Andrew Dolgov
bb4e4282f4
migrate a bunch of xhrPost invocations
2021-02-19 11:28:14 +03:00
Andrew Dolgov
00310d2d23
cleanup some unused code, fix App.byId() invoked by wrong name
2021-02-19 06:58:50 +03:00
Andrew Dolgov
dcfea9baac
properly validate feed editor dialog
2021-02-19 06:51:15 +03:00
Andrew Dolgov
70fa423026
initial for RIP prototype/scriptaculous
2021-02-18 21:51:18 +03:00
Andrew Dolgov
75435aa960
user details: cleanup
2021-02-18 13:00:20 +03:00
Andrew Dolgov
39c0fe3697
shorten many invocations of Ajax.Request in inline form methods
2021-02-18 12:27:26 +03:00
Andrew Dolgov
1adb9bb6b6
profiles: use client dialog; move related methods to pref-prefs
2021-02-18 11:54:22 +03:00
Andrew Dolgov
91e7969383
replace a few more controls to new style
2021-02-16 18:57:06 +03:00
Andrew Dolgov
24c79d91c2
controls_compat: comment out most of them
2021-02-16 18:53:56 +03:00
Andrew Dolgov
f58c49beaa
replace a few more controls to new style
2021-02-16 18:50:18 +03:00
Andrew Dolgov
bdbbdbb0ed
rework controls to accept parameters as array
2021-02-16 16:59:21 +03:00
Andrew Dolgov
627af2c236
amend previous to fix actual underlying problem (double escaping)
2021-02-16 15:36:40 +03:00
Andrew Dolgov
1f5d81b77c
use a few more control helpers for checkboxes
2021-02-16 15:19:42 +03:00
Andrew Dolgov
1f43d7916c
replace print_hidden with hidden_tag
2021-02-16 14:32:06 +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
cb6b3584ce
pref-labels: remove unused code
2021-02-16 14:19:06 +03:00
Andrew Dolgov
70e293bccb
pref-filters: fix some warnings
2021-02-15 17:07:50 +03:00
Andrew Dolgov
39604bedef
move reset_password to UserHelper
2021-02-15 16:59:54 +03:00
Andrew Dolgov
bd3c38de84
move bookmarklet-related subscribe_to_feed_url to bookmarklet plugin
2021-02-15 16:41:52 +03:00
Andrew Dolgov
91285e3868
router: add additional logging for refused requests; reject requests for methods starting with _
2021-02-15 16:34:44 +03:00
Andrew Dolgov
8e79f1717d
prefs: unify naming
2021-02-15 16:07:22 +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
a2e688fcb2
render headline-specific toolbar on the client
2021-02-14 22:17:13 +03:00
Andrew Dolgov
4996d8ccfe
pref-users edit: use client dialog
2021-02-14 16:44:41 +03:00
Andrew Dolgov
0b7377238a
add Handler_Administrative
2021-02-14 15:50:46 +03:00
Andrew Dolgov
33ea46c2bc
pref-users/add: remove unused variable
2021-02-14 15:42:12 +03:00
Andrew Dolgov
0fbf109912
* remove users/filters toolbar edit button (just click on it)
...
* fix title of edit filter dialog always showing create filter
2021-02-14 15:38:45 +03:00
Andrew Dolgov
a8cc43a0ff
move logout_user() to UserHelper
2021-02-14 15:31:03 +03:00
Andrew Dolgov
2547ece0ca
pref-users: cleanup index
2021-02-14 14:59:22 +03:00
Andrew Dolgov
1c7e4782aa
prefs system: load phpinfo using inline method
2021-02-14 12:29:08 +03:00
Andrew Dolgov
6b5c9c781b
pref prefs: load secondary tabs when needed
2021-02-14 12:25:41 +03:00
Andrew Dolgov
e5cedc7d5f
appPasswordList: markup cleanup
2021-02-14 11:39:26 +03:00
Andrew Dolgov
8e75551f95
pref prefs: split index into manageable chunks
2021-02-14 11:29:38 +03:00
Andrew Dolgov
15fd23c374
use shortcut echo syntax for php templates
2021-02-14 09:15:51 +03:00
Andrew Dolgov
d4c925819b
pref-feeds: load error button via xhr
2021-02-13 23:12:49 +03:00
Andrew Dolgov
43d8a1f2ff
remove getinactivefeeds (duplicate functionality)
2021-02-13 23:08:20 +03:00
Andrew Dolgov
103d30ad3f
batch subscribe: use client dialog
2021-02-13 22:16:17 +03:00
Andrew Dolgov
c36b2adf84
feeds with errors: use client dialog
2021-02-13 21:57:02 +03:00
Andrew Dolgov
8464c619e4
inactive feeds: use client dialog
2021-02-13 21:41:38 +03:00
Andrew Dolgov
17413078a7
pref feeds: index cleanup, split into several methods, use tabs to maximize space for feed tree, persist feed tree state
2021-02-13 18:32:02 +03:00
Andrew Dolgov
9684ce5c4b
minor fixes re: previous
2021-02-13 16:07:52 +03:00
Andrew Dolgov
b112198991
pref filters index: markup cleanup
2021-02-13 14:05:25 +03:00
Andrew Dolgov
5127c29297
prefs system: markup cleanup
2021-02-13 13:50:53 +03:00
Andrew Dolgov
aa63014073
pref-labels index: use cleaner markup
2021-02-13 13:37:57 +03:00
Andrew Dolgov
46f6d7c11a
pref-labels/index: cleanup
2021-02-13 13:26:17 +03:00
Andrew Dolgov
e7924c6dac
label editor: use client dialog
2021-02-13 13:17:34 +03:00
Andrew Dolgov
481bd76100
pref helpers: move some methods to their own sections
2021-02-12 21:51:32 +03:00
Andrew Dolgov
6af83e3881
drop ENABLE_GZIP_OUTPUT; system prefs: load php info only if needed
2021-02-12 21:43:38 +03:00
Andrew Dolgov
157675d9fd
prefs: fix published shared URL dialog
2021-02-12 19:17:50 +03:00
Andrew Dolgov
03b85248e6
move some dialogs to xhr loading
2021-02-12 18:38:26 +03:00
Andrew Dolgov
3268364693
more dialog-related cleanup
2021-02-12 15:50:06 +03:00
Andrew Dolgov
3d11c61f32
* OPML import: don't reload everything, just feed tree
...
* dialogs: use auto-destroying dialog for almost all dialogs instead of destroying them manually
* some general dialog-related cleanup
2021-02-12 15:22:10 +03:00
Andrew Dolgov
8f8675a26a
* filters: remove duplicate code, overall cleanup
...
* check if some tres exist before trying to reload them
2021-02-12 14:31:36 +03:00
Andrew Dolgov
0f7af07c6e
edit filter dialog: cleanup
2021-02-12 12:12:47 +03:00
Andrew Dolgov
20fb056323
remove customizecss from csrf-ignored methods
2021-02-12 10:37:14 +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
d466284fab
* customizeCSS: client dialog
...
* remove hardcoded width from most dialogs (move to css)
* add helper to easily get dialog from its widget
* rework some dialog buttons to use current object instead of calling dialog by name
2021-02-12 09:02:44 +03:00
Andrew Dolgov
83b0738b04
opml import: no more iframe, use client dialog
2021-02-12 08:22:00 +03:00
Andrew Dolgov
3134d71b8f
fix typo introduced by 4182018cb7
2021-02-12 08:15:30 +03:00
Andrew Dolgov
4182018cb7
generated feed: use client dialog
2021-02-11 22:04:39 +03:00
Andrew Dolgov
1a680d4eae
publishedOPML: use client dialog
2021-02-11 21:42:38 +03:00
Andrew Dolgov
09e9f34bb4
add UserHelper::find_user_by_login() and rewrite some user checks to invoke it instead of going through PDO
2021-02-11 10:22:27 +03:00
Andrew Dolgov
7af8744c85
authentication: make logins case-insensitive (force lowercase)
2021-02-11 09:57:57 +03:00
Andrew Dolgov
e7e73193fe
fix warning in profile edit dialog (2)
2021-02-10 22:06:01 +03:00
Andrew Dolgov
2505ae43a9
fix warning in profile edit dialog
2021-02-10 22:03:08 +03:00
Andrew Dolgov
9e1459d5db
pref/prefs: fix warning when in non-default profile
2021-02-10 21:40:43 +03:00
Andrew Dolgov
d630a92c40
fix 2 warnings in feed editor
2021-02-09 15:04:01 +03:00
Andrew Dolgov
345dbb3521
rewrite some more hooks
2021-02-08 22:46:01 +03:00
Andrew Dolgov
fc2e0bf67b
log viewer: disable previous page on page 1
2021-02-08 17:05:50 +03:00
Andrew Dolgov
3b52cea811
move some old-style handlers to new callback ones
2021-02-08 16:14:48 +03:00
Andrew Dolgov
1d5c8ee500
prefs: fix user plugins shown by incorrect criteria
2021-02-08 15:41:15 +03:00
Andrew Dolgov
1eb1629d9e
pluginhost: rework run_hooks() to be shorter, add callback variant; implement exception handling for both
2021-02-08 14:24:45 +03:00
Andrew Dolgov
d293cbd5a9
fix several warnings related to feed editor
2021-02-08 11:46:43 +03:00
Andrew Dolgov
ce2335deaf
pref-users: css fixes
2021-02-06 16:24:40 +03:00
Andrew Dolgov
d8de10d78a
error log: fix severity dropdown
2021-02-06 16:16:43 +03:00
Andrew Dolgov
73e697a0df
fix some warnings in prefs (filters, users)
2021-02-06 16:13:11 +03:00
Andrew Dolgov
73070544ca
error log: make it more readable
2021-02-06 16:11:29 +03:00
Andrew Dolgov
5cfc5914f2
log viewer: show total pages
2021-02-06 15:33:19 +03:00
Andrew Dolgov
10392ecc28
event log: add pagination
2021-02-06 10:10:54 +03:00
Andrew Dolgov
a544123b59
fix clean() for arrays and user plugin list
2021-02-06 00:17:41 +03:00
Andrew Dolgov
6e774a58fe
more php8 fixes mostly related to login
2021-02-06 00:12:15 +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
40f38fc87f
pluginhost: load plugin data automatically (also marks load_data method as private)
2021-01-15 08:32:06 +03:00
Andrew Dolgov
33a5ecd2ce
feed editor: show purge interval correctly if FORCE_ARTICLE_PURGE is set
2021-01-07 18:16:42 +03:00
Andrew Dolgov
8cc07bc8bd
event log: add severity filtering
2020-12-24 15:02:47 +03:00
Andrew Dolgov
6da576dbe4
BLACKLISTED_TAGS: use textarea for editing; normalize value when saving
2020-12-21 08:50:34 +03:00
wn_
d2db58de4f
Switch from 'vsprintf' to 'sprintf' in another place.
2020-12-16 07:55:32 -06:00
fox
ef7e679363
Merge branch 'feature/php8' of wn/tt-rss into master
2020-12-16 11:06:48 +00:00
Andrew Dolgov
9b7338e807
feed editor: properly show global purging interval as disabled
2020-12-15 08:49:43 +03:00
wn
62da307ef1
Use correct 'sprintf' function and other minor fixes in Pref_Feeds.
2020-12-12 10:28:55 -06:00
wn
a1f8d6941b
Remove duplicate block in 'classes/pref/filters.php'.
...
Also a minor tweak to getting the search filter.
2020-12-12 10:28:54 -06:00
wn
8c4ca7c8ef
Fix some 'isset' checks in 'classes/pref/prefs.php'.
2020-12-12 10:28:53 -06: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
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
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
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
33fdde249e
pass CSRF token to opml import and feed icon replace dialogs
2020-09-16 06:43:55 +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
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
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
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
1f2a721905
allow overriding built-in templates via templates.local
2020-03-13 14:40:35 +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
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
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
6080cca9ca
scrap counter cache system; rework counters to sum() booleans instead
2020-01-24 14:25:31 +03:00