Commit Graph

659 Commits (master)

Author SHA1 Message Date
Andrew Dolgov 22fe9b54d2 feed editor: use client dialog 3 years ago
Andrew Dolgov 9586c72a17 wip: feed editor client-side 3 years ago
Andrew Dolgov 660a1bbe01 * switch to xhr.post() almost everywhere
* call App.handlerpcjson() automatically on json request (if possible)
 * show net/log indicators in prefs
3 years ago
Andrew Dolgov bb4e4282f4 migrate a bunch of xhrPost invocations 3 years ago
Andrew Dolgov 00310d2d23 cleanup some unused code, fix App.byId() invoked by wrong name 3 years ago
Andrew Dolgov dcfea9baac properly validate feed editor dialog 3 years ago
Andrew Dolgov 70fa423026 initial for RIP prototype/scriptaculous 3 years ago
Andrew Dolgov 75435aa960 user details: cleanup 3 years ago
Andrew Dolgov 39c0fe3697 shorten many invocations of Ajax.Request in inline form methods 3 years ago
Andrew Dolgov 1adb9bb6b6 profiles: use client dialog; move related methods to pref-prefs 3 years ago
Andrew Dolgov 91e7969383 replace a few more controls to new style 3 years ago
Andrew Dolgov 24c79d91c2 controls_compat: comment out most of them 3 years ago
Andrew Dolgov f58c49beaa replace a few more controls to new style 3 years ago
Andrew Dolgov bdbbdbb0ed rework controls to accept parameters as array 3 years ago
Andrew Dolgov 627af2c236 amend previous to fix actual underlying problem (double escaping) 3 years ago
Andrew Dolgov 1f5d81b77c use a few more control helpers for checkboxes 3 years ago
Andrew Dolgov 1f43d7916c replace print_hidden with hidden_tag 3 years ago
Andrew Dolgov 26d6b84a57 add namespaced controls with unified naming; deprecated old-style control shortcuts 3 years ago
Andrew Dolgov cb6b3584ce pref-labels: remove unused code 3 years ago
Andrew Dolgov 70e293bccb pref-filters: fix some warnings 3 years ago
Andrew Dolgov 39604bedef move reset_password to UserHelper 3 years ago
Andrew Dolgov bd3c38de84 move bookmarklet-related subscribe_to_feed_url to bookmarklet plugin 3 years ago
Andrew Dolgov 91285e3868 router: add additional logging for refused requests; reject requests for methods starting with _ 3 years ago
Andrew Dolgov 8e79f1717d prefs: unify naming 3 years ago
Andrew Dolgov 020f062a76 feeds: unify naming 3 years ago
Andrew Dolgov 6b006a18e7 subscribe to feed: use client dialog 3 years ago
Andrew Dolgov a2e688fcb2 render headline-specific toolbar on the client 3 years ago
Andrew Dolgov 4996d8ccfe pref-users edit: use client dialog 3 years ago
Andrew Dolgov 0b7377238a add Handler_Administrative 3 years ago
Andrew Dolgov 33ea46c2bc pref-users/add: remove unused variable 3 years ago
Andrew Dolgov 0fbf109912 * remove users/filters toolbar edit button (just click on it)
* fix title of edit filter dialog always showing create filter
3 years ago
Andrew Dolgov a8cc43a0ff move logout_user() to UserHelper 3 years ago
Andrew Dolgov 2547ece0ca pref-users: cleanup index 3 years ago
Andrew Dolgov 1c7e4782aa prefs system: load phpinfo using inline method 3 years ago
Andrew Dolgov 6b5c9c781b pref prefs: load secondary tabs when needed 3 years ago
Andrew Dolgov e5cedc7d5f appPasswordList: markup cleanup 3 years ago
Andrew Dolgov 8e75551f95 pref prefs: split index into manageable chunks 3 years ago
Andrew Dolgov 15fd23c374 use shortcut echo syntax for php templates 3 years ago
Andrew Dolgov d4c925819b pref-feeds: load error button via xhr 3 years ago
Andrew Dolgov 43d8a1f2ff remove getinactivefeeds (duplicate functionality) 3 years ago
Andrew Dolgov 103d30ad3f batch subscribe: use client dialog 3 years ago
Andrew Dolgov c36b2adf84 feeds with errors: use client dialog 3 years ago
Andrew Dolgov 8464c619e4 inactive feeds: use client dialog 3 years ago
Andrew Dolgov 17413078a7 pref feeds: index cleanup, split into several methods, use tabs to maximize space for feed tree, persist feed tree state 3 years ago
Andrew Dolgov 9684ce5c4b minor fixes re: previous 3 years ago
Andrew Dolgov b112198991 pref filters index: markup cleanup 3 years ago
Andrew Dolgov 5127c29297 prefs system: markup cleanup 3 years ago
Andrew Dolgov aa63014073 pref-labels index: use cleaner markup 3 years ago
Andrew Dolgov 46f6d7c11a pref-labels/index: cleanup 3 years ago
Andrew Dolgov e7924c6dac label editor: use client dialog 3 years ago
Andrew Dolgov 481bd76100 pref helpers: move some methods to their own sections 3 years ago
Andrew Dolgov 6af83e3881 drop ENABLE_GZIP_OUTPUT; system prefs: load php info only if needed 3 years ago
Andrew Dolgov 157675d9fd prefs: fix published shared URL dialog 3 years ago
Andrew Dolgov 03b85248e6 move some dialogs to xhr loading 3 years ago
Andrew Dolgov 3268364693 more dialog-related cleanup 3 years ago
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
3 years ago
Andrew Dolgov 8f8675a26a * filters: remove duplicate code, overall cleanup
* check if some tres exist before trying to reload them
3 years ago
Andrew Dolgov 0f7af07c6e edit filter dialog: cleanup 3 years ago
Andrew Dolgov 20fb056323 remove customizecss from csrf-ignored methods 3 years ago
Andrew Dolgov bf6d0f2817 various dialog-related fixes; stop referring to many dialogs by name; move filter test initial dialog to client side 3 years ago
Andrew Dolgov 72e38bfe1f rework a few more dialogs to use App.dialogOf() 3 years ago
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
3 years ago
Andrew Dolgov 83b0738b04 opml import: no more iframe, use client dialog 3 years ago
Andrew Dolgov 3134d71b8f fix typo introduced by 4182018cb7 3 years ago
Andrew Dolgov 4182018cb7 generated feed: use client dialog 3 years ago
Andrew Dolgov 1a680d4eae publishedOPML: use client dialog 3 years ago
Andrew Dolgov 09e9f34bb4 add UserHelper::find_user_by_login() and rewrite some user checks to invoke it instead of going through PDO 3 years ago
Andrew Dolgov 7af8744c85 authentication: make logins case-insensitive (force lowercase) 3 years ago
Andrew Dolgov e7e73193fe fix warning in profile edit dialog (2) 3 years ago
Andrew Dolgov 2505ae43a9 fix warning in profile edit dialog 3 years ago
Andrew Dolgov 9e1459d5db pref/prefs: fix warning when in non-default profile 3 years ago
Andrew Dolgov d630a92c40 fix 2 warnings in feed editor 3 years ago
Andrew Dolgov 345dbb3521 rewrite some more hooks 3 years ago
Andrew Dolgov fc2e0bf67b log viewer: disable previous page on page 1 3 years ago
Andrew Dolgov 3b52cea811 move some old-style handlers to new callback ones 3 years ago
Andrew Dolgov 1d5c8ee500 prefs: fix user plugins shown by incorrect criteria 3 years ago
Andrew Dolgov 1eb1629d9e pluginhost: rework run_hooks() to be shorter, add callback variant; implement exception handling for both 3 years ago
Andrew Dolgov d293cbd5a9 fix several warnings related to feed editor 3 years ago
Andrew Dolgov ce2335deaf pref-users: css fixes 3 years ago
Andrew Dolgov d8de10d78a error log: fix severity dropdown 3 years ago
Andrew Dolgov 73e697a0df fix some warnings in prefs (filters, users) 3 years ago
Andrew Dolgov 73070544ca error log: make it more readable 3 years ago
Andrew Dolgov 5cfc5914f2 log viewer: show total pages 3 years ago
Andrew Dolgov 10392ecc28 event log: add pagination 3 years ago
Andrew Dolgov a544123b59 fix clean() for arrays and user plugin list 3 years ago
Andrew Dolgov 6e774a58fe more php8 fixes mostly related to login 3 years ago
Andrew Dolgov 403dca154c initial WIP for php8; bump php version requirement to 7.0 3 years ago
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)
3 years ago
Andrew Dolgov 40f38fc87f pluginhost: load plugin data automatically (also marks load_data method as private) 3 years ago
Andrew Dolgov 33a5ecd2ce feed editor: show purge interval correctly if FORCE_ARTICLE_PURGE is set 3 years ago
Andrew Dolgov 8cc07bc8bd event log: add severity filtering 4 years ago
Andrew Dolgov 6da576dbe4 BLACKLISTED_TAGS: use textarea for editing; normalize value when saving 4 years ago
wn_ d2db58de4f Switch from 'vsprintf' to 'sprintf' in another place. 4 years ago
fox ef7e679363 Merge branch 'feature/php8' of wn/tt-rss into master 4 years ago
Andrew Dolgov 9b7338e807 feed editor: properly show global purging interval as disabled 4 years ago
wn 62da307ef1 Use correct 'sprintf' function and other minor fixes in Pref_Feeds. 4 years ago
wn a1f8d6941b Remove duplicate block in 'classes/pref/filters.php'.
Also a minor tweak to getting the search filter.
4 years ago
wn 8c4ca7c8ef Fix some 'isset' checks in 'classes/pref/prefs.php'. 4 years ago
Andrew Dolgov 8089fcc762 feed editor: also show default value for purge interval 4 years ago
Andrew Dolgov d48460969d feed editor: show actual value of default update interval 4 years ago
Andrew Dolgov d1ee30d1ba prevent horizontal scrolling in filter editor dialog if rules are very long 4 years ago
Andrew Dolgov 215f388992 move timestamp-related stuff to a separate class 4 years ago
Andrew Dolgov 6811d0bde2 use self:: in some places to invoke static methods from the same class 4 years ago
Andrew Dolgov 74568df4ff remove a lot of stuff from global context (functions.php), add a few helper classes instead 4 years ago
Andrew Dolgov 03a337a660 add basic safe mode which doesn't load any user plugins 4 years ago
Andrew Dolgov a4525d31b2 replace FALSE with false so that static analyzer shuts up about it 4 years ago
Andrew Dolgov 89d53a7f49 fix typo in previous 4 years ago
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
4 years ago
Andrew Dolgov 33fdde249e pass CSRF token to opml import and feed icon replace dialogs 4 years ago
Andrew Dolgov 4a074111b5 user preferences: forbid < and > characters when changing passwords (were silently stripped on save because of clean()) 4 years ago
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
4 years ago
Andrew Dolgov fa653f5a43 prefs: show disabled filters properly on mysql 4 years ago
Andrew Dolgov 2996a3942f prefs: show root of filter tree as enabled so it's not grayed out 4 years ago
Andrew Dolgov d01ad09800 eslint-related fixes; move a few things from global context to App 4 years ago
Andrew Dolgov c8cc845d5b when removing favicon, reset its auto-refresh timer 4 years ago
Andrew Dolgov 1f2a721905 allow overriding built-in templates via templates.local 4 years ago
Andrew Dolgov bcbc5ccc78 batchSubscribe: use validationtextarea 4 years ago
Andrew Dolgov f24ece85a6 add validationtextarea control, use it for filter match editor 4 years ago
Andrew Dolgov 8645f36c5b filter test dialog: pass contents via xhr POST 4 years ago
Andrew Dolgov 4ab3854aed don't generate default.css, replace with themes/light.css as a default root CSS file 4 years ago
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
4 years ago
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
4 years ago
Andrew Dolgov 6080cca9ca scrap counter cache system; rework counters to sum() booleans instead 4 years ago
Andrew Dolgov df464e3d0d update app password notice 5 years ago
Andrew Dolgov 76dd74e0d9 add a hidden tweakable which forbids changing passwords 5 years ago
Andrew Dolgov ac95ab4a65 user css dialog: allow saving and applying CSS without closing the dialog 5 years ago
Andrew Dolgov 63ce7ea705 add a plugin page warning for plugins using HOOK_FEED_FETCHED, etc 5 years ago
Andrew Dolgov f75fb6bd75 Merge branch 'master' of git.fakecake.org:tt-rss 5 years ago
Andrew Dolgov 266a805bfe line endings + remove : from headings 5 years ago
Andrew Dolgov 05dffcff6f OTP stuff: update notice wording a bit 5 years ago
Andrew Dolgov 812a6c9f16 auth_internal: fix indents 5 years ago
Andrew Dolgov 249130e58d implement app password checking / management UI 5 years ago
Andrew Dolgov 88cd9e586e add placeholder UI plumbing for app passwords 5 years ago
Andrew Dolgov 904ecc31e2 allow using OTP without GD 5 years ago
Andrew Dolgov 2820f41a4b add notification for OTP being disabled 5 years ago
Andrew Dolgov ef514bc4bd add notifications for mail and password changes
update and shorten some other message templates
5 years ago
Andrew Dolgov 12a542977e makefeedtree: properly calculate feed total amount in no-categories mode 5 years ago
Andrew Dolgov 6825aaff55 update SSL certificate wiki link 5 years ago
Andrew Dolgov e8523733b0 filter dialog: add inline regexp checker 5 years ago
Andrew Dolgov 86a014f23b add placeholder Filters.filterDlgCheckRegExp 5 years ago
Andrew Dolgov 088fcf8131 move more globals to more appropriate places
set libxml to always use internal errors
5 years ago
Andrew Dolgov 4fa9aee4e7 move several more global functions to more appropriate classes 5 years ago
Andrew Dolgov 6d746453c7 get_feeds_from_html: remove XML preamble hack
move several related helper functions to Feeds class
5 years ago
Andrew Dolgov d36b64d8a7 event log: simplify styles, prevent horizontal scrolling
sql logger: clip context length to 8kb
5 years ago
Andrew Dolgov 4b74491b8b feed tree: set placeholder feed unread value to -1 5 years ago
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.
5 years ago
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.
5 years ago
Andrew Dolgov ed22473272 feed editor: use DEFAULT_SEARCH_LANGUAGE as a default per-feed dropdown value 5 years ago
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 5 years ago
Andrew Dolgov 019f4578bc fix feed icon upload not working, rework form to use FormData/ajax 5 years ago