1
0
mirror of https://tt-rss.org/git/tt-rss.git synced 2024-07-02 12:50:52 +02:00
Commit Graph

1191 Commits

Author SHA1 Message Date
Andrew Dolgov
93e70e36c2 force article content/etc to string when updating to avoid failing null constraint check 2017-12-03 13:32:24 +03:00
Andrew Dolgov
b51d44a5e6 further stylesheet simplification related fixes (2) 2017-12-03 13:26:26 +03:00
Andrew Dolgov
09bc54c690 further stylesheet simplification related fixes 2017-12-03 13:25:34 +03:00
Andrew Dolgov
5e68e24679 css/less updates 2017-12-03 12:50:07 +03:00
Andrew Dolgov
4dc3f7e779 api: do not use sql_bool_to_bool() 2017-12-03 11:06:49 +03:00
Andrew Dolgov
69563c96b4 plugin base: add type hint to init(host) 2017-12-03 10:11:32 +03:00
Andrew Dolgov
49a888ecce rssutils: forbid question marks in tsvector data, PDO gets confused sometimes even by quoted ?s 2017-12-03 10:10:01 +03:00
Andrew Dolgov
64312bfd71 feeds: remove sql_bool_to_bool() 2017-12-03 09:44:08 +03:00
Andrew Dolgov
b6f3562d1e plugin base class: init pdo object
plugins/share: use PDO
2017-12-03 09:43:18 +03:00
Andrew Dolgov
187abfe732 main classes: remove sql_bool_to_bool() kludge 2017-12-03 09:35:59 +03:00
Andrew Dolgov
8ff3cbb32e filters: remove sql_bool_to_bool()
checkbox_to_sql_bool: return ints (???)
2017-12-03 09:26:11 +03:00
Andrew Dolgov
e4291ba12f otpenable: use pdo prepare() 2017-12-03 09:10:14 +03:00
Andrew Dolgov
731ecac530 completeLabels: use prepare() not query() 2017-12-03 09:06:43 +03:00
Andrew Dolgov
7d960ce7e9 auth_internal: use PDO + other fixes 2017-12-03 00:18:08 +03:00
fox
ab1960cf13 Merge branch 'upstream/pdo-experimental' of JustAMacUser/tt-rss into pdo-experimental 2017-12-02 19:50:00 +00:00
Andrew Dolgov
bfccff11c4 filter rule saving fix 2017-12-02 22:47:47 +03:00
JustAMacUser
1a05210933 Fixed PDO query to prepared statement in API::updateArticles. 2017-12-02 14:08:55 -05:00
Andrew Dolgov
bf6db17b8f feeds: use PDO 2017-12-02 16:07:03 +03:00
Andrew Dolgov
2e52e4fd7a feeds: more PDo stuff 2017-12-02 15:53:32 +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
7a1872c1e0 feeds: more PDO stuff 2017-12-02 15:36:32 +03:00
Andrew Dolgov
b5bf9a0ff3 remove long forgotten stuff related to feed debugging actionbar 2017-12-02 15:12:39 +03:00
Andrew Dolgov
91d679667e feeds: PDO progress 2017-12-02 15:04:11 +03:00
Andrew Dolgov
da9ea57d1c checkbox to sql bool related changes, some more boolean fixes 2017-12-02 14:07:48 +03:00
Andrew Dolgov
7ccb4e91ff boolean handling changes which probably won't break everything 2017-12-02 14:02:01 +03:00
Andrew Dolgov
248c62a1cc filters: fix limit/offset for test dialog 2017-12-02 13:54:18 +03:00
Andrew Dolgov
bf4a79eaa9 prefs: start PDO switchover 2017-12-02 13:49:35 +03:00
Andrew Dolgov
f594717d18 filters: use PDO 2017-12-02 13:28:13 +03:00
Andrew Dolgov
21295a52aa labels: PDO 2017-12-02 12:45:33 +03:00
Andrew Dolgov
c2418a559b pref-users: PDO 2017-12-02 12:23:41 +03:00
Andrew Dolgov
93ca6c95b8 pref-system: PDO 2017-12-02 12:03:39 +03:00
Andrew Dolgov
7039370368 pref-prefs: PDO 2017-12-02 12:01:56 +03:00
Andrew Dolgov
f8108cc28d pluginhost: save_data() fixes 2017-12-02 11:31:02 +03:00
Andrew Dolgov
8af94f1292 pluginhost: use PDO 2017-12-02 11:25:43 +03:00
Andrew Dolgov
0500e14cc2 update_rss_feed: transaction lock article processing 2017-12-02 11:16:33 +03:00
Andrew Dolgov
0567016b40 rssutils: PDO 2017-12-02 09:56:34 +03:00
Andrew Dolgov
afcb105f4e rssutils: start PDO switch 2017-12-02 08:38:57 +03:00
Andrew Dolgov
1d92297a96 dbupdater: use PDO 2017-12-02 01:28:30 +03:00
Andrew Dolgov
c949a9282e OPML: use PDO; minor fixes 2017-12-02 01:08:30 +03:00
Andrew Dolgov
4102eb843f sql logger: pdo 2017-12-02 00:13:28 +03:00
Andrew Dolgov
c1c08aed39 labels: PDO 2017-12-02 00:06:17 +03:00
Andrew Dolgov
fbe7cb0a48 rpc: switch to PDO 2017-12-01 23:49:14 +03:00
Andrew Dolgov
9652fa6b66 API: small fix 2017-12-01 22:49:12 +03:00
Andrew Dolgov
3467e1fd7c api: switch to PDO 2017-12-01 22:46:22 +03:00
Andrew Dolgov
dd90eefae1 PDO: set unicode for mysql and other connection params 2017-12-01 22:14:54 +03:00
Andrew Dolgov
aee3f0e6d9 fix typo 2017-12-01 22:07:39 +03:00
Andrew Dolgov
7fc303e6ab query feed headlines: fix limit/offset 2017-12-01 21:07:55 +03:00
Andrew Dolgov
cb13089af1 public: use PDO headlines result (2) 2017-12-01 20:57:55 +03:00
Andrew Dolgov
dc393a580b public: use PDO headlines result 2017-12-01 20:57:05 +03:00
Andrew Dolgov
3623ebb1a1 feeds: handle escaping 2017-12-01 20:52:30 +03:00
Andrew Dolgov
c9b6ca8b70 feeds: remove escaping 2017-12-01 20:26:51 +03:00
Andrew Dolgov
b5791f11c5 queryfeedheadlines: PDOize (1) 2017-12-01 20:25:13 +03:00
Andrew Dolgov
29f1908e03 feeds: right before queryfeedheadlines() 2017-12-01 20:15:25 +03:00
Andrew Dolgov
cc9450c309 ccache, misc: fixes
feeds: start PDO transition
2017-12-01 19:42:02 +03:00
Andrew Dolgov
1271407eea public: partial conversion to PDO, misc fixes 2017-12-01 18:57:34 +03:00
Andrew Dolgov
fbde19580c db_prefs: PDO 2017-12-01 18:40:48 +03:00
Andrew Dolgov
abf94f00b4 digest: use PDO 2017-12-01 18:31:23 +03:00
Andrew Dolgov
9ead64f6d8 dlg: PDO 2017-12-01 18:16:58 +03:00
Andrew Dolgov
933ff559e6 ccache: PDO 2017-12-01 18:03:33 +03:00
Andrew Dolgov
a25ac0d7c8 counters: PDO 2017-12-01 17:47:29 +03:00
Andrew Dolgov
c9d5c26041 auth/base: PDO
functions: fix small pdo-related bug
2017-12-01 17:40: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
bfc54b0369 Merge branch 'pdo-experimental' of git.fakecake.org:tt-rss into pdo-experimental 2017-12-01 10:17:36 +03:00
Andrew Dolgov
d9e60c0f68 Merge branch 'master' of git.fakecake.org:tt-rss into pdo-experimental 2017-12-01 10:17:18 +03:00
Andrew Dolgov
e50c8eaa4e enforce unconditional requests every 6 hours even if server claims data is not modified 2017-11-30 13:12:28 +03:00
Andrew Dolgov
8adb3ec472 add some WIP pdo stuff 2017-11-30 12:28:07 +03:00
Andrew Dolgov
ca82bb03c8 rm db_stmt 2017-11-30 11:53:21 +03:00
Andrew Dolgov
99bda9cc12 add some starting pdo glue 2017-11-30 10:47:42 +03:00
Andrew Dolgov
9dd336a2c3 generate base css files using lessc 2017-11-29 18:55:12 +03:00
dim0x69
5395526444 add HOOK_UNSUBSCRIBE_FEED 2017-11-27 11:46:46 +01:00
Andrew Dolgov
2352c320c2 fix possible sql injection in public/forgotpass 2017-11-20 08:48:18 +03:00
Andrew Dolgov
9d930af9e1 fetch_file_contents: improve error handling
1. if request fails get error string from http  response status line
2. do not override http error with possible CURL/php specific last error
3. fix silent php error generated while processing response headers to get last modified value
2017-10-30 13:13:10 +03:00
Andrew Dolgov
91f49ba17d api, setArticleLabel: allow JSON booleans 2017-10-15 16:47:44 +03:00
fox
d320b55af9 Merge branch 'sort_title_date' of ggrandou/tt-rss into master 2017-10-13 05:53:03 +00:00
Gilles Grandou
f9ad33c2d8 allows favicons to be in Windows PC BMP format 2017-10-09 22:58:00 +02:00
Gilles Grandou
81d96c0dee makes 'order by title' to sort by title and by ascending date
* this allows to chronologically browse all articles with the
  same title.
2017-10-09 22:50:03 +02:00
Andrew Dolgov
8b73bd28d8 remove apache-specific x-sendfile stuff
implement a hook (HOOK_SEND_LOCAL_FILE) which plugins may use to send files
via httpd-specific implementation to increase performance typically on larger files
2017-10-08 17:14:56 +03:00
fox
b1d1bc901f Merge branch 'checkbox-feed' of dxbi/tt-rss into master 2017-10-06 06:47:54 +00:00
Felix Eckhofer
cc50affb62
Add checkbox for authentication in edit feed dialog
This makes the UI more consistent with the "add feed" dialog and
prevents overzealous password-managers from leaking the login password.
2017-10-06 08:37:37 +02:00
Andrew Dolgov
51b521c326 fix batch feed editor using wrong SQL syntax when saving feed password
remove uses of auth_pass_encrypted in several other places
2017-10-06 09:22:04 +03:00
wn_
3476690cbf Only require an array of basic info from 'HOOK_FEED_BASIC_INFO'.
Removes the need for the plugin to provide feed content.

Gives plugins a chance to provide 'title' and 'site_url' basic info.
Falls back to attempting retrieval+parsing of the fetch URL if needed.
2017-09-26 20:42:33 -05:00
wn_
bec5ba93e2 Add 'HOOK_FEED_BASIC_INFO' to enable plugins to provide basic feed info.
It's expected the plugin will return content parsable by FeedParser, which
will act as an interface to the basic feed info.  In the case of a plugin
that also uses 'HOOK_FETCH_FEED', both might return the same content.

The hook signature was made somewhat similar to 'HOOK_FETCH_FEED'.
2017-09-24 19:37:49 -05:00
wn_
f3774b9d65 Use 'saveHTML' when generating HTML from a DOMDocument.
This primarily occurs when modifying article content.  If 'saveXML' is
used following 'loadHTML' there is the possibility of strangeness, such
as a self-closing anchor tag.

Note that the DOMDocument used in 'classes/feeditem/atom.php' came from
'loadXML', but we use 'saveHTML' since we're returning HTML content.
2017-09-09 13:51:59 -05:00
Andrew Dolgov
153cb6d305 add support for http 304 not modified (no timestamp calculation bullshit like last time) 2017-08-17 14:40:21 +03:00
Andrew Dolgov
edefcec19d filters/edit: properly parse feed-specific legacy format filter rules 2017-08-14 22:29:50 +03:00
Andrew Dolgov
ab8daa0389 use mysqli_set_charset() to set MYSQL_CHARSET 2017-08-09 08:05:52 +03:00
Andrew Dolgov
20d2195f13 rssutils: include comment count when calculating article hash 2017-08-06 20:20:39 +03:00
Andrew Dolgov
51f13e7736 get_all_labels: order by caption 2017-07-30 15:25:49 +03:00
Andrew Dolgov
5e78b0c253 do not base headlines label context submenu on feed tree labels category 2017-07-30 11:55:30 +03:00
Andrew Dolgov
be61f1c45c filters dialog: do not break markup on long feed names 2017-07-09 16:39:25 +03:00
Andrew Dolgov
b2d42e960b replace some usages of SELF_URL_PATH with get_self_url_prefix() 2017-07-06 23:01:44 +03:00
Andrew Dolgov
667d32fd26 remove obsolete forum plugin links
mention how to enable system plugins in the UI
2017-07-04 16:28:45 +03:00
Andrew Dolgov
7b994e4bec filters: when adding rule select all feeds by default 2017-07-02 22:55:36 +03:00
Andrew Dolgov
57a1143c9d dbupdater: fail if version file missing 2017-07-02 20:53:07 +03:00
Andrew Dolgov
02f3992a5a Revert "Revert "filters: support matching on multiple feeds/categories""
This reverts commit f5d174bda9.
2017-07-02 20:37:52 +03:00
Andrew Dolgov
f5d174bda9 Revert "filters: support matching on multiple feeds/categories"
This reverts commit 0bf7e007bb.
2017-07-02 20:37:01 +03:00
Andrew Dolgov
e0f51d786f Merge branch 'master' of git.fakecake.org:tt-rss 2017-07-02 20:27:31 +03:00
Andrew Dolgov
0bf7e007bb filters: support matching on multiple feeds/categories
opml: update filter export/import for new format
2017-07-02 20:27:21 +03:00
Andrew Dolgov
c053b97697 pref/feeds: start user category ordering from 1
api, getFeeds: send subcategory order_id
2017-06-26 16:29:57 +03:00
Andrew Dolgov
e130b283a7 db prefs: ignore cache when preference requested for specified UID (in case cached value of a different profile is stored)
prefs: show (and set) enabled plugins for default profile only
2017-06-24 14:29:07 +03:00
Andrew Dolgov
93af11cb7a update_daemon_common: do not escape feed_url twice, remove some comments and stuff 2017-06-13 20:09:33 +03:00
Andrew Dolgov
6fd0399694 tunables:
* add CACHE_MAX_DAYS as a tunable generic expiry interval for various cached files
* add some comments to tunables in functions.php
* rename _MIN_CACHE_FILE_SIZE to MIN_CACHE_FILE_SIZE
* respect MIN_CACHE_FILE_SIZE setting in a few more places where content is cached
2017-05-29 23:14:42 +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
9e381bc202 classes/Plugin: remove dbh & host fields; set init() and about() as abstract methods. 2017-05-23 21:16:30 +03:00
Andrew Dolgov
5b6ea1ef91 remove pubsubhubbub: dead 2017-05-16 10:41:20 +03:00
Andrew Dolgov
8f0a59f34a share function: remove tt-rss prefix from page title 2017-05-11 09:56:51 +03:00
Andrew Dolgov
c114a2596f move add_feed_url() to pref_feeds 2017-05-11 09:07:49 +03:00
Andrew Dolgov
4fd0790804 fix DAEMON_SLEEP_INTERVAL not being defined when used
enforce minimum 60 sec spawn/sleep interval in update processes
2017-05-06 10:54:14 +03:00
Andrew Dolgov
e6c886bf66 wrap rssfuncs into rssutils class 2017-05-05 18:10:07 +03:00
Andrew Dolgov
65af3b2cbb move counter stuff to a separate class 2017-05-05 11:54:31 +03:00
Andrew Dolgov
40f4a7aa6b feeditem_common: add get_element() 2017-05-05 09:21:10 +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
c2f0f24e4c move digest stuff to Digest class 2017-05-04 15:41:38 +03:00
Andrew Dolgov
0086a89740 move some label stuff to labels.php
move getfeedcategory() to Feeds
2017-05-04 15:36:36 +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
86a8351ca2 move the following to Feeds:
+       static function catchup_feed($feed, $cat_view, $owner_uid = false, $mode = 'all', $search = false) {
+       static function getFeedArticles($feed, $is_cat = false, $unread_only = false,
+       static function subscribe_to_feed($url, $cat_id = 0,
+       static function getFeedIcon($id) {
+       static function getFeedTitle($id, $cat = false) {
+       static function getCategoryUnread($cat, $owner_uid = false) {
+       static function getCategoryChildrenUnread($cat, $owner_uid = false) {
2017-05-04 14:50:56 +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
e60d5b0a84 move opml-specific get_feed_category to opml.php 2017-05-04 14:24:30 +03:00
Andrew Dolgov
3517d363d3 add api test for labels, api: fix setArticleLabel assign not handled correctly 2017-04-27 09:04:23 +03:00
Andrew Dolgov
891df34637 add some basic API unit tests 2017-04-27 00:24:17 +03:00
Andrew Dolgov
ea79a0e033 remove some redundant php closing tags 2017-04-26 20:24:18 +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
3c11159776 return result codes if DB connection or --debug-feed fails 2017-04-25 13:39:01 +03:00
Andrew Dolgov
337535416f filter by search results while marking feed as read 2017-03-31 11:21:35 +03:00
Andrew Dolgov
9c3c0ace6b rename cache images option label (rip translations) 2017-03-23 15:16:31 +03:00
Andrew Dolgov
41bead9baa remove local file extensions and generalize some method names for cached media
file extensions may still be present in urls, but are ignored by the backend

MIGRATION (if you have any cached data worth keeping, not required):
in cache/images run "rename 's/\..*$//' *" i.e. strip file extensions
2017-03-23 14:55:40 +03:00
Andrew Dolgov
63f0ed3d9c cdmClicked: do not use event.target.parents to figure out if clicked on a heading 2017-03-06 12:19:13 +03:00
Andrew Dolgov
270c0a00e5 improve JS error logging with additional stuff 2017-03-05 10:50:15 +03:00
Andrew Dolgov
1bfe1d7b31 simplify error handling
* less convoluted exception dialogs
* use window.onerror for the majority of exception catching/reporting
* remove most of now useless try/catch blocks
* report stacktrace instead of manually specified error locations
2017-03-04 14:34:44 +03:00
Andrew Dolgov
b835a52814 rework the way headlines menus identify calling row 2017-02-17 09:01:45 +03:00
Andrew Dolgov
5161460048 bind headlines menu to a selector to avoid remaking it unnecessarily 2017-02-13 23:36:58 +03:00
Andrew Dolgov
58210301e0 add HOOK_ENCLOSURE_ENTRY for af_zz_imgproxy 2017-02-12 16:01:28 +03:00
Jérémy DECOOL
ba2853caac Prevent target='_blank' vulnerability on dynamic link 2017-02-12 11:01:36 +01:00
Andrew Dolgov
4daaf23491 allow user plugins to expose public methods out in a limited fashion 2017-02-10 16:04:28 +03:00
Andrew Dolgov
328118d12e use print_hidden() for hidden dojo form fields 2017-02-10 14:36:21 +03:00
Andrew Dolgov
38b3998bbc af_zz_imgproxy: use inline disposition, misc updates 2017-02-10 12:37:21 +03:00
Andrew Dolgov
9c7ebaa08c cached_image: remove unnecessary basename() 2017-02-04 12:02:17 +03:00
Andrew Dolgov
0442cbb6c1 image cache: send files as content-disposition: attachment; add .png suffix to image urls 2017-02-04 11:32:24 +03:00
Andrew Dolgov
24c7e4132d subscribe dialog: do not report errors via alert()
fetch_file_contents: reset all globals on start, return error message body when not using curl
subscribe_to_feed: report if cloudflare is in the error message
2017-01-28 12:45:49 +03:00
Andrew Dolgov
22387de225 preferences: set themes dropdown to default if selected theme is missing 2017-01-26 22:37:22 +03:00
Andrew Dolgov
e432b8fbe2 implement cache-busting for default theme.css
night theme: small fixes
2017-01-25 12:17:41 +03:00
Andrew Dolgov
cb3f877303 reference pubsubhubbub classes using their namespace 2017-01-23 08:20:46 +03:00
Andrew Dolgov
ad326dbf78 unpackVisibleHeadlines: do not iterate over all RROWs all the time 2017-01-22 20:57:16 +03:00