Alexandre Alapetite
0d0b8cd39b
Error when feed does not exist
...
https://github.com/marienfressinaud/FreshRSS/issues/579
2014-08-19 21:39:45 +02:00
Alexandre Alapetite
50075bfbdc
Improvement for ASC order
...
https://github.com/marienfressinaud/FreshRSS/issues/495
2014-08-19 20:58:18 +02:00
Alexandre Alapetite
d477373ef2
SQLite: Bug creation new users
...
Not tested much yet. Some MySQL parts changed a bit too to double-check.
https://github.com/marienfressinaud/FreshRSS/issues/574
2014-08-09 19:58:39 +02:00
Alexandre Alapetite
2b25aa8f68
Option to hide (or not) feeds/categories with no unread article
...
https://github.com/marienfressinaud/FreshRSS/issues/430
https://github.com/marienfressinaud/FreshRSS/issues/575
2014-08-09 18:46:22 +02:00
Alexandre Alapetite
65d6796e92
First bug for old articles first
...
https://github.com/marienfressinaud/FreshRSS/issues/495
2014-08-07 11:29:19 +02:00
Alexandre Alapetite
274c8096e3
Experimental: Removed lazyload.js and use postpone attribute instead
...
https://github.com/marienfressinaud/FreshRSS/issues/316
The performance of lazyload.js was not good enough, and not really
needed anyway.
This change mostly affects mainly situations when the content of
articles is shown by default, not so much when they are collapsed
Using HTML5 lazyload and postpone attributes by default on all img,
audio, iframe, video.
http://www.w3.org/TR/resource-priorities/#attr-postpone
Postpone attribute is removed by JavaScript if the user does not want
the lazyload behaviour.
In the case when users do want the lazyload behaviour, in normal view
with articles hidden, we furthermore use the data-original approach to
be sure to support current browsers.
+Corrected some bugs with enclosures, and some images not appearing
before the first scroll.
+Now faster regex processing img and iframe at once (was not practical
with lazyload.js)
2014-08-02 19:57:15 +02:00
Marien Fressinaud
4a0e5ac037
Merge pull request #548 from aledeg/more-stats
...
Add article repartition in stats
2014-07-29 00:07:07 +02:00
plopoyop
ad9fbf3887
Correct bug in add/remove users
2014-07-26 13:29:55 +02:00
Alexis Degrugillier
aa317eb294
Add repartition statistic support in Sqlite
2014-07-24 22:57:31 -04:00
Alexis Degrugillier
d049c1bc80
Add article repartition in stats
...
Add article repartition per hour, per day of week, per month for all feeds but also for individual feeds.
2014-07-24 21:57:59 -04:00
Marien Fressinaud
d5d3f6dcfa
Fix bugs in import/export
...
- EntryDAO.php: add a missing "FreshRSS_EntryDAO::"
- Fix htmlspecialchars in opml export
2014-07-23 23:56:16 +02:00
Alexandre Alapetite
937cb4b066
Idle feeds: link to configuration page
...
https://github.com/marienfressinaud/FreshRSS/issues/544
2014-07-22 13:41:31 +02:00
Alexis Degrugillier
68c0a827d2
Add statistics support for Sqlite
...
Add statistics support for Sqlite by tweeking one query and rewrite an other. The rewrite implied a complete refactor of the MySql query as well.
Now the code is more flexible and make less queries to the database.
See #527
2014-07-18 20:35:03 -04:00
Alexandre Alapetite
3403af3050
SQL: Bug with order ASC
...
https://github.com/marienfressinaud/FreshRSS/issues/538
2014-07-17 11:56:15 +02:00
Marien Fressinaud
f56dd400b7
Add base-theme in p/themes
...
This base theme is not visible by default (no name). You can use it
to create new theme.
Fix https://github.com/marienfressinaud/FreshRSS/issues/533 (comment)
2014-07-10 17:42:42 +02:00
Alexandre Alapetite
6c83264f83
SQL: MySQL speed optimisation
...
Would be nice to test with other versions of MySQL too.
Comparison before/after:
mysql> EXPLAIN SELECT e.id, e.guid, e.title, e.author,
UNCOMPRESS(content_bin) AS content, e.link, e.date, e.is_read,
e.is_favorite, e.id_feed, e.tags FROM `freshrss_alex_entry` e INNER JOIN
(SELECT e1.id FROM `freshrss_alex_entry` e1 INNER JOIN
`freshrss_alex_feed` f ON e1.id_feed=f.id WHERE f.priority > 0 AND
(e1.id >= 1381615200000000 OR e1.is_read=0 OR e1.is_favorite=1 OR
(f.keep_history <> 0)) ORDER BY e1.id DESC LIMIT 31) e2 ON e2.id=e.id
ORDER BY e.id DESC;
+----+-------------+------------+--------+-------------------------------------+----------+---------+---------------+------+----------------------------------------------+
| id | select_type | table | type | possible_keys
| key | key_len | ref | rows | Extra
|
+----+-------------+------------+--------+-------------------------------------+----------+---------+---------------+------+----------------------------------------------+
| 1 | PRIMARY | <derived2> | ALL | NULL
| NULL | NULL | NULL | 31 | Using temporary; Using
filesort |
| 1 | PRIMARY | e | eq_ref | PRIMARY
| PRIMARY | 8 | e2.id | 1 |
|
| 2 | DERIVED | f | range | PRIMARY,priority,keep_history
| priority | 1 | NULL | 137 | Using where; Using
temporary; Using filesort |
| 2 | DERIVED | e1 | ref |
PRIMARY,id_feed,is_favorite,is_read | id_feed | 2 | freshrss.f.id
| 452 | Using where |
+----+-------------+------------+--------+-------------------------------------+----------+---------+---------------+------+----------------------------------------------+
4 rows in set (3.50 sec)
mysql> EXPLAIN SELECT e.id, e.guid, e.title, e.author,
UNCOMPRESS(content_bin) AS content, e.link, e.date, e.is_read,
e.is_favorite, e.id_feed, e.tags FROM `freshrss_alex_entry` e INNER JOIN
(SELECT e1.id FROM `freshrss_alex_entry` e1 INNER JOIN
`freshrss_alex_feed` f ON e1.id_feed=f.id WHERE f.priority > 0 AND e1.id
<=9000000000000000 AND (e1.id >= 1381615200000000 OR e1.is_read=0 OR
e1.is_favorite=1 OR (f.keep_history <> 0)) ORDER BY e1.id DESC LIMIT 31)
e2 ON e2.id=e.id ORDER BY e.id DESC;
+----+-------------+------------+--------+-------------------------------------+---------+---------+---------------------+-------+---------------------------------+
| id | select_type | table | type | possible_keys
| key | key_len | ref | rows | Extra
|
+----+-------------+------------+--------+-------------------------------------+---------+---------+---------------------+-------+---------------------------------+
| 1 | PRIMARY | <derived2> | ALL | NULL
| NULL | NULL | NULL | 31 | Using temporary;
Using filesort |
| 1 | PRIMARY | e | eq_ref | PRIMARY
| PRIMARY | 8 | e2.id | 1 |
|
| 2 | DERIVED | e1 | range |
PRIMARY,id_feed,is_favorite,is_read | PRIMARY | 8 | NULL
| 70084 | Using where |
| 2 | DERIVED | f | eq_ref | PRIMARY,priority,keep_history
| PRIMARY | 2 | freshrss.e1.id_feed | 1 | Using where
|
+----+-------------+------------+--------+-------------------------------------+---------+---------+---------------------+-------+---------------------------------+
4 rows in set (0.01 sec)
2014-07-10 15:49:51 +02:00
Marien Fressinaud
c1728fe0d7
Coding style header.phtml + possibility to change logo
...
See https://github.com/marienfressinaud/FreshRSS/issues/532
2014-07-09 19:39:21 +02:00
Alexandre Alapetite
0f842c1aea
SQL: removed superfluous transactions to avoid some dead locks
2014-07-08 14:14:02 +02:00
Alexis Degrugillier
21d8c03ac9
Add a configuration parameter
...
Add a parameter to choose wether or not the user want to display a confirmation dialog when clicking on "mark all as read" actions.
2014-07-07 19:34:47 -04:00
Alexandre Alapetite
e358c5e2e1
SQL: SQLite syntax uniformisation
...
805c91da98 (diff-101042bec0ff3ac9d691b2e77fca3313R7)
2014-07-07 21:12:13 +02:00
Alexandre Alapetite
439a0e2991
SQL: improved performance for adding new articles
2014-07-07 18:25:48 +02:00
Alexandre Alapetite
3bbd0e446f
Prepare statistics for SQLite
...
Temporarily disable 30-day statistics for SQLite
https://github.com/marienfressinaud/FreshRSS/issues/100
https://github.com/marienfressinaud/FreshRSS/issues/90
2014-07-06 11:54:00 +02:00
Alexandre Alapetite
3d3b33ea2e
Bug global TTL
...
https://github.com/marienfressinaud/FreshRSS/issues/250
2014-07-06 10:12:37 +02:00
Alexandre Alapetite
bc8eb560af
Add TTL to control feed freshness
...
https://github.com/marienfressinaud/FreshRSS/issues/250
2014-07-06 00:09:31 +02:00
Alexandre Alapetite
b48dc25963
Merge pull request #516 from aledeg/stats
...
Refactor statistics
2014-07-05 18:43:35 +02:00
Alexandre Alapetite
b8e6a3b5b2
Bug feed->hash for 301 redirections, favicons
2014-07-05 11:17:23 +02:00
Alexandre Alapetite
805c91da98
Add support for SQLite
...
https://github.com/marienfressinaud/FreshRSS/issues/100
Warning: MySQL has been changed too, so bugs may have been introduced
2014-07-05 01:52:41 +02:00
Alexandre Alapetite
b34f59e85a
Preparation #3 for SQLite
...
https://github.com/marienfressinaud/FreshRSS/issues/100
2014-07-03 22:48:29 +02:00
Alexandre Alapetite
2501bb337e
Preparation #2 for SQLite
...
https://github.com/marienfressinaud/FreshRSS/issues/100
2014-07-03 22:11:25 +02:00
Alexandre Alapetite
d6f4141086
Preparation for SQLite
...
https://github.com/marienfressinaud/FreshRSS/issues/100
2014-07-03 21:26:30 +02:00
Alexandre Alapetite
af9e5a408a
Small correction favicon
...
Ensure to try the website favicon before trying the feed URL favicon
(which might be on e.g. FeedBurner with an anonymous favicon).
2014-07-03 01:28:56 +02:00
Alexandre Alapetite
3275018238
Cleaning some hash functions
2014-07-03 00:43:02 +02:00
Alexandre Alapetite
63c9c47a76
SimplePie HTTP 301 Moved Permanently
...
Add support for HTTP 301 Moved Permanently in SimplePie
FreshRSS will automatically update the address of a feed, only in this
case.
2014-07-01 23:30:01 +02:00
Alexis Degrugillier
60fe99344e
Refactor and formatting
2014-06-15 12:13:33 -04:00
Alexis Degrugillier
181fcd9889
Refactor statistics
...
I made a new controller to handle statistics. The old statistics have been moved in that controller and a new action has been added to display idle feeds. I also added a menu in the left panel to navigate between the statistics pages.
See #90
2014-06-15 12:05:21 -04:00
Marien Fressinaud
09602acc5f
Add two wrappers (_t() and _i())
...
- _t() is a wrapper for Minz_Translate::t()
- Improve coding style of Translate.php
- _i() is a wrapper for FreshRSS::icon()
- queries.phtml shows how they work
- It is a lot easier to read files with these functions :)
2014-06-15 17:49:23 +02:00
Marien Fressinaud
a7e8332809
Improve system of queries
...
- Coding style
- More checks server side
- Default query name is "Query n°X"
- List of queries is moved into nav_menu, in a dropdown
- Better system to remove fields in JS (to a.remove elements, give an
attibute data-remove="id_to_remove")
- Fix a bug in lib/Mine/Request.php (htmlspecialchars_utf8 can be applied on
arrays now)
- Few theme improvements
- Add an element .no-mobile to apply to elements which should not appear on
mobiles
See https://github.com/marienfressinaud/FreshRSS/pull/498
2014-06-14 09:04:31 +02:00
Marien Fressinaud
2b8dc66634
Merge branch 'user-queries' of https://github.com/aledeg/FreshRSS into aledeg-user-queries
...
Conflicts:
app/layout/nav_menu.phtml
2014-06-13 20:20:43 +02:00
Marien Fressinaud
b8f53b0525
Add an option to choose content width
...
- 4 options: thin, medium, large and no limit
- Thin is by default
2014-06-05 22:26:18 +02:00
Marien Fressinaud
e70933dfeb
Update links to change view
...
- Dropdown menu is transformed into stick buttons
- 3 new icons (view-normal, view-global, view-reader)
- Link to access RSS is now next to these buttons (should we kept it
here?)
2014-06-05 21:25:21 +02:00
Alexandre Alapetite
d1b31b1a61
Search order of filters
...
For now, process them in the same order as specified by the user
Specifying for instance `date:` first will be much faster than
specifying a free text word first.
https://github.com/marienfressinaud/FreshRSS/issues/511
2014-06-01 15:23:30 +02:00
Alexandre Alapetite
ecac55d3d3
New search system, including date: and pubdate: and combination
...
Now also accepts combination of #tag and intitle: and inurl: and author:
and the new date: and pubdate:
https://github.com/marienfressinaud/FreshRSS/issues/511
Each search prefix stop at the first space (we should add a possibility
to have quotes for multiple words)
So if you want two words in title, write "intitle:word1 intitle:word2"
Examples of dates:
date:2014
date:2014-02/2014-04 or date:201402/201404
date:P1W for the last week
2014-06-01 14:40:38 +02:00
Alexandre Alapetite
c3178a4f89
Add video control for podcasts
...
https://github.com/marienfressinaud/FreshRSS/issues/504
2014-05-14 09:07:30 +02:00
Alexandre Alapetite
7f1c305c86
Add audio control for podcasts
...
https://github.com/marienfressinaud/FreshRSS/issues/504
2014-05-13 22:30:24 +02:00
Alexis Degrugillier
8521c876d4
Add user queries
...
It's an intermediary step to remove the favorite button.
I add a button to store the current query as a favorite query. It redirects automatically to the configuration page where it is possible to name and remove user queries.
To make the queries more straigtforward, I removed the default behavior when searching for a string. This way, when we search for a string, the filter is not defaulted to all articles.
2014-05-04 17:23:53 -04:00
Alexis Degrugillier
f820f428ef
Add a shortcut to access the search field
2014-04-27 11:00:25 -04:00
Alexandre Alapetite
f25783ef5d
Minor syntax changes for: New toggle buttons to filter articles
...
See
http://programmers.stackexchange.com/questions/23852/bitwise-or-vs-adding-flags
https://github.com/marienfressinaud/FreshRSS/pull/486
https://github.com/marienfressinaud/FreshRSS/issues/376
2014-04-15 12:16:31 +02:00
Alexis Degrugillier
3a736e902c
Move state constants from Configuration to Entry
2014-04-13 08:16:43 -04:00
Alexis Degrugillier
1e032608a6
Change rss icon fallback value
2014-04-13 07:39:33 -04:00
Alexis Degrugillier
cd87e2000a
Revert deletion of the favorite actions
2014-04-13 07:35:17 -04:00