Commit Graph

153 Commits

Author SHA1 Message Date
Andrew Dolgov 85b788709a setArticleTags: prevent duplicate tags being assigned if called twice
editTagsDlg: prevent dialot from being submitted twice
normalize_categories: filter out empty values that failed validation
2020-12-07 23:35:37 +03:00
Andrew Dolgov e40b79ab33 get_article_image: return basic kind to which flavor image belongs 2020-12-07 12:09:06 +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 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 42b5564d1e editarticletags: load dialog via XHR 2020-09-15 18:47:19 +03:00
Andrew Dolgov e670ac2ee5 require CSRF token for Article/redirect 2020-09-15 15:35:50 +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 6080cca9ca scrap counter cache system; rework counters to sum() booleans instead 2020-01-24 14:25:31 +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 5648b836aa HOOK_ARTICLE_IMAGE: allow hooks to modify article content 2019-08-15 10:22:33 +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 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 b1dd38f880 add DiskCache.getUrl() and use it in a bunch of places 2019-08-13 12:39:21 +03:00
Andrew Dolgov 4fa9aee4e7 move several more global functions to more appropriate classes 2019-06-20 08:14:06 +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 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
Andrew Dolgov 3bd3324e5a update: add option to send digests 2019-03-21 07:44:39 +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 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 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 b2c079893b move Article::format_article() to Handler_Public 2018-12-09 11:13:02 +03:00
Andrew Dolgov bd66a9ef28 render article on the client using headlines data 2018-12-08 09:32:14 +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 4cbc62d2a5 article note format updates 2018-12-06 20:55:51 +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 d2d2cb7e7d rework scoring display, JS processing and icons 2018-12-06 14:23:45 +03:00
Andrew Dolgov a0778577ac remove pub_{set,unset}.png usage in main code 2018-12-05 14:18:03 +03:00
Andrew Dolgov 78cc470193 remove some plugin JS code out of global context 2018-12-03 10:51:14 +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 3678315bea Article, Headlines: shorten several method names 2018-12-02 08:32:13 +03:00
Andrew Dolgov 642c37ea61 further effocts to wrap JS stuff into objects 2018-12-01 21:01:53 +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 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 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 3a0292303e php: remove trailing whitespaces 2018-11-03 15:08:43 +03: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
Andrew Dolgov f5302247c6 share: add support for og:image, etc. metadata for shared articles 2018-05-29 22:04:02 +03:00
Andrew Dolgov 8e1450aa15 update previous to only affect mysql 2017-12-05 22:46:18 +03:00
Andrew Dolgov f76f773a16 purge_orphans: limit maximum number of deleted articles 2017-12-05 22:37:50 +03:00
Andrew Dolgov e6532439d6 force strip_tags() on all user input unless explicitly allowed 2017-12-03 23:35:38 +03:00
Andrew Dolgov 31e2811a63 ttrss_zoom: fix CSS 2017-12-03 19:55:19 +03:00
Andrew Dolgov 5e68e24679 css/less updates 2017-12-03 12:50:07 +03:00
Andrew Dolgov 187abfe732 main classes: remove sql_bool_to_bool() kludge 2017-12-03 09:35:59 +03:00
Andrew Dolgov e4befe6bf4 fix label cache being double escaped on save
remove some old-style escaping
2017-12-02 15:47:53 +03:00
Andrew Dolgov 2c57df75ff article: remove db_escape..() 2017-12-01 17:35:22 +03:00
Andrew Dolgov d0e73ed8ae article: switch to PDO 2017-12-01 17:33:59 +03:00
Andrew Dolgov 2e46b434da pdo: set warnings 2017-12-01 16:56:15 +03:00
Andrew Dolgov c39ee27235 article: start pdo 2017-12-01 15:31:16 +03:00
Andrew Dolgov 9dd336a2c3 generate base css files using lessc 2017-11-29 18:55:12 +03:00
Andrew Dolgov e50a647916 add HOOK_FORMAT_ARTICLE & HOOK_FORMAT_ARTICLE_CDM
Feeds::format_headlines_list: add some comments for cdm article closing tags
2017-05-26 23:22:00 +03:00
Andrew Dolgov 8f0a59f34a share function: remove tt-rss prefix from page title 2017-05-11 09:56:51 +03:00
Andrew Dolgov 7c9b5a3fe4 move label stuff to Labels class
fix some unresolved functions
2017-05-04 15:57:40 +03:00
Andrew Dolgov 4a0da0e5bf move get_article_labels to Article 2017-05-04 15:26:21 +03:00
Andrew Dolgov 2ed0d6c433 move counter cache to a separate class
fix references to get_article_tags
2017-05-04 15:22:57 +03:00
Andrew Dolgov aeb1abedb2 move a bunch of functions into Feeds/Article namespaces
+       static function catchupArticlesById($ids, $cmode, $owner_uid = false) {
+       static function getLastArticleId() {
+       static function queryFeedHeadlines($params) {
+       static function getParentCategories($cat, $owner_uid) {
+       static function getChildCategories($cat, $owner_uid) {

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

move to Feeds

+       static function getGlobalUnread($user_id = false) {
+       static function getCategoryTitle($cat_id) {
+       static function getLabelUnread($label_id, $owner_uid = false) {
2017-05-04 15:00:21 +03:00
Andrew Dolgov 7e5f8d9fb3 move the following to Article:
+       static function format_article_enclosures($id, $always_display_enclosures,
+       static function format_article($id, $mark_as_read = true, $zoom_mode = false, $owner_uid = false) {
+       static function get_article_tags($id, $owner_uid = 0, $tag_cache = false) {
+       static function format_tags_string($tags) {
+       static function format_article_labels($labels) {
+       static function format_article_note($id, $note, $allow_edit = true) {
+       static function get_article_enclosures($id) {
2017-05-04 14:38:45 +03:00
Andrew Dolgov 4122da0290 move getArticleFeed to Article
move print_label_select to controls
2017-05-04 14:26:44 +03:00
Andrew Dolgov 7b55001eee fix various issues reported by static analysis
update gitlab-ci config
2017-04-26 15:29:22 +03:00
Andrew Dolgov 328118d12e use print_hidden() for hidden dojo form fields 2017-02-10 14:36:21 +03:00
Andrew Dolgov 8b8568e9a3 edit tags dialog: fix height 2017-01-04 10:40:09 +03:00
Andrew Dolgov 7af2e79578 create_published_article: only use readability if enabled in the plugin 2016-01-29 15:48:44 +03:00
Andrew Dolgov 666cd33360 enable support for readability (if af_readability is enabled) in shareanything bookmarklet 2016-01-29 15:38:05 +03:00
Andrew Dolgov f48f292d2b tweak filter preview layout a bit; allow previewing matched articles in a popup 2015-09-11 13:05:08 +03:00
Andrew Dolgov fb8a032a6b minor textarea fixes 2015-08-11 18:44:07 +03:00
Andrew Dolgov a72cd54ce1 bayes: properly reset score when going good -> ugly
article: add helper to refresh article score pic, properly set scorepic title
2015-06-17 22:04:32 +03:00
Andrew Dolgov 7416305704 fix sharebyurl identifying articles by link instead of special synthesized guid which caused feed entries overwriting shared entries if their link matched 2014-07-17 00:39:13 +04:00
Andrew Dolgov 4a80c57c50 remove some unused code reported by phpmd 2014-02-19 15:42:52 +04:00
Andrew Dolgov 5bbc4bb4b0 move stylesheets to css/, reference default tt-rss stylesheets from
default.css to make custom themes easier
2013-05-19 21:22:01 +04:00
Rasmus Lerdorf 6f7798b643 Fixing bugs found by static analysis 2013-05-07 00:35:10 -07:00
Andrew Dolgov d9c85e0f11 classes: use OO DB interface 2013-04-17 20:12:14 +04:00
Andrew Dolgov a42c55f02b fix blank character after opening bracket in function calls 2013-04-17 18:34:18 +04:00
Andrew Dolgov 6322ac79a0 remove $link 2013-04-17 16:48:41 +04:00
Andrew Dolgov 5e3d5480f7 use hashed guids in a hopefully backwards compatible fashion 2013-04-15 19:28:11 +04:00
Andrew Dolgov 4b7726f0b4 rpc: move labelops to article 2013-04-02 14:56:08 +04:00
Andrew Dolgov c83554bddd rpc: move completeTags to article 2013-04-02 14:53:36 +04:00
Andrew Dolgov 5df8be5c0a rpc: move setArticleTags to article 2013-04-02 14:52:21 +04:00
Andrew Dolgov d719b06240 rpc: move setScore to article 2013-04-02 14:41:41 +04:00
Andrew Dolgov 1c9bda915b move several methods from dlg; fix displayed tags not updated after editing 2013-04-01 11:14:27 +04:00
Andrew Dolgov d2888e8832 create_published_article: set last_published properly on creation 2013-03-25 10:30:01 +04:00
Andrew Dolgov 3972bf5981 db_escape_string: specify link parameter for consistency; sessions: do not force-close db connection in _close() 2013-03-22 09:14:55 +04:00
Andrew Dolgov 6afcbcd1a5 fix wrong DOS line-endings 2013-02-21 18:58:06 +04:00
Andrew Dolgov 5083271956 move some more functions out of functions.php; fix opml.php failing due to redeclared autoload 2013-01-22 22:36:16 +04:00
Andrew Dolgov 87d7e8507a split some more functions from functions.php 2013-01-22 22:32:17 +04:00
Andrew Dolgov 369dbc19d6 rework class system to use subdirectories
add placeholder plugin/hook system
2012-08-17 14:22:33 +04:00
Andrew Dolgov 8484ce2258 experimental CSRF protection 2011-12-26 12:02:52 +04:00