Commit Graph

528 Commits

Author SHA1 Message Date
Alexandre Alapetite
295cb89af3 Fix PHP 5.5 compat for array const (#2360)
https://github.com/FreshRSS/FreshRSS/issues/2359
2019-04-07 21:39:48 +02:00
Alexis Degrugillier
0eea6d5ab5 Revert "Update git command (#2331)"
This reverts commit afd1a8784c.
2019-04-03 17:38:17 +02:00
Alexis Degrugillier
afd1a8784c Update git command (#2331)
I removed an unnecessary option and rewrote a short option
to use the long option. I find it's easier to understand
long options when you don't type them.
2019-04-03 08:02:43 +02:00
Alexandre Alapetite
d9e246ecf7 Shortcuts legacy (#2320)
Fix https://github.com/FreshRSS/FreshRSS/issues/2316
2019-04-02 00:08:51 +02:00
Alexandre Alapetite
1804c0e0bc Filter actions (#2275)
* Draft of filter actions

* Travis

* Implement UI + finish logic

* Travis
2019-03-23 22:52:47 +01:00
Alexandre Alapetite
ebd8c31c02 Rework CSRF interaction with sessions (#2290)
* Rework CSRF interaction with sessions

Fix https://github.com/FreshRSS/FreshRSS/issues/2288
Improve security in some edge cases
Maybe relevant for
https://github.com/FreshRSS/FreshRSS/issues/2125#issuecomment-474992671

* Forgotten mime type
2019-03-22 19:05:38 +01:00
Alexandre Alapetite
834ffacce2 No old ID (#2276)
* No old ID

https://github.com/FreshRSS/FreshRSS/issues/2273

* PostgreSQL insert or ignore
2019-03-19 20:14:31 +01:00
Alexandre Alapetite
2856f7b8b4 Revert wrong boolean 2019-03-02 21:06:56 +01:00
Alexandre Alapetite
7d76acad04 Re-introduce Travis workaround 2019-03-02 20:56:03 +01:00
Alexandre Alapetite
f1978da394 Boolean error 2019-03-02 20:43:51 +01:00
Alexandre Alapetite
2b2d9583cd Fix mark_updated_article_unread
https://github.com/FreshRSS/FreshRSS/issues/2200
2019-03-02 20:39:18 +01:00
Alexandre Alapetite
2374374ba9 Less jQuery (#2234)
* Less jQuery

Follow-up of https://github.com/FreshRSS/FreshRSS/pull/2199

* Even less jQuery + global view unread title fix

* Even less jQuery

* Yet even less jQuery

* Even less jQuery

* Reduce some events

* Even less jQuery

* jQuery gone from main view

+Fixed English i18n

* Fix feed folded view

* Remove Firefox 64 workaround

Remove workaround for Gecko bug 1514498 in Firefox 64, fixed in Firefox
65

* Split to extra.js

Avoid loading unneeded JavaScript code for the main view.
+ several adjustements

* Improve CSS transition fold category

* Rewrite shortcuts

Remove library. Much faster, shorter, one listener instead of many.
Control of the shortcut context.
Fix https://github.com/FreshRSS/FreshRSS/issues/2215

* Remove debug

* Minor syntax

* Filter out unwanted shortcut modifiers

* Menu overflow fix

* Typo

* Fix unfolding in mobile view

* Remove jQuery from category.js

* Remove jQuery from Global view
2019-02-13 15:06:28 +01:00
Alexandre Alapetite
ef6df8aeca Merge branch 'dev' into dev-1.14.0 2019-01-26 21:08:27 +01:00
Alexandre Alapetite
7902d10b3a Import FeedBin (#2228)
* Import FeedBin

https://github.com/FreshRSS/FreshRSS/issues/2227
And more tolerant import

* Mute import fake feed + Changelog

* strtotime for published dates in string
2019-01-26 12:55:12 +01:00
Alexandre Alapetite
f1ac6dd550 Export/import articles read/unread state (#2226) 2019-01-24 20:44:45 +01:00
Alexandre Alapetite
f0684d7018 Fix import labels (#2225)
All labelled articles were wrongly marked as starred.
2019-01-24 19:54:34 +01:00
Alexandre Alapetite
34fe41ac78 Merge branch 'FreshRSS/dev' into FreshRSS/dev-1.14.0 2019-01-17 21:36:29 +01:00
Alexandre Alapetite
743c1b740b Export labels (#2217)
* Export labels

https://github.com/FreshRSS/FreshRSS/issues/2196

* Small fixes

* Backport code from 1.14.0

4888f919f1

* More fixes
2019-01-16 22:26:43 +01:00
Alexandre Alapetite
a26eff8a20 Merge branch 'FreshRSS/dev' into FreshRSS/dev-1.14.0 2019-01-06 12:19:26 +01:00
Alexandre Alapetite
945cf832ad HTTP authenfication fixes (#2204)
* Security fixes when HTTP user does not exist in FreshRSS
* Accept HTTP header X-WebAuth-User for delegated HTTP Authentication (e.g. Træfik)
* Document delegated HTTP authentication from https://github.com/FreshRSS/FreshRSS/pull/2202
2019-01-02 21:43:05 +01:00
Alexandre Alapetite
4888f919f1 Prepare for batch mark as read 2018-12-25 01:30:28 +01:00
Alexandre Alapetite
512d047f02 Update naming to WebSub (#2184)
Instead of PubSubHubbub / PuSH
2018-12-16 17:02:03 +01:00
Alexandre Alapetite
7cbfdb4e09 Filter feeds in error (#2160)
https://github.com/FreshRSS/FreshRSS/issues/2146
2018-12-01 22:12:42 +01:00
Patrick Crandol
ebb9ee0873 Edit cookie_duration from GUI (#2137)
* Use cookie_duration correctly

* WIP allow cookie_duration to be modified from GUI

* Allow cookie_duration to actually be updated

* Update view to properly display cookie_duration

* Add new strings in Translation Files

* Fix typo

* Fix trailing whitespace

* I18n: French translation

* I18n fr: Forgot todo
2018-11-18 19:34:41 +01:00
Alexandre Alapetite
f26b8f3f31 PHP 7.1 tempnam warning fix (#2134)
And suggested dir was wrong.

https://bugs.php.net/bug.php?id=69489
```
<b>Notice</b>:  tempnam(): file created in the system's temporary
directory in
<b>/var/www/html/FreshRSS/app/Controllers/importExportController.php</b>
on line <b>800</b><br />
```
2018-11-18 11:34:40 +01:00
Alexandre Alapetite
55d7115926 Add username in configuration menu and exports (#2133)
* Add username in configuration menu

https://github.com/FreshRSS/FreshRSS/pull/2099#issuecomment-435944803

* Add username to exported files
2018-11-18 11:32:13 +01:00
Alexandre Alapetite
cf899d8d25 TT-RSS import (#2099)
* TT-RSS import

Import of Tiny Tiny RSS favourites
https://github.com/FreshRSS/FreshRSS/issues/2018#issuecomment-432710462

* Fallback feed_url

* Simpler JSON

* TT-RSS import custom labels

* Fix syntax
2018-11-05 18:10:38 +01:00
Alexandre Alapetite
c57aade0f2 Introduce a routine for minor DB maintenance (#2080) 2018-10-26 21:05:00 +02:00
Alexandre Alapetite
307e6995fe MySQL GUID case sensitive (#2078)
* MySQL GUID case sensitive

latin1_bin
https://github.com/FreshRSS/FreshRSS/issues/2077

* Prepare update for existing bases

* Perform DB update during actualize

* Reduce frequency slightly

* No optimize at the same time

* Take advantage of the SQL modifications in 1.12

* Move higher up

* Move to purge, which all users can manually call
2018-10-25 22:43:13 +02:00
Alexandre Alapetite
6a686daafa Allow dot in username (#2062)
* Allow dot in username

https://github.com/FreshRSS/FreshRSS/issues/2061

* Missing quotes for special chars in PostgreSQL
2018-10-24 13:07:39 +02:00
Alexandre Alapetite
46510febf1 Improved flow for password change (#2057)
https://github.com/FreshRSS/FreshRSS/issues/2056
2018-10-21 16:33:28 +02:00
Alexandre Alapetite
0aecf44294 Option to force clear cache (#2052)
https://github.com/FreshRSS/FreshRSS/issues/1020#issuecomment-428515868
2018-10-17 18:03:50 +02:00
Alexandre Alapetite
5b030dcc6f Ensure fast flush of HTTP headers and HTML head (#2045)
* Ensure fast flush of HTTP headers and HTML head

The fast flush optimisation done in
https://github.com/FreshRSS/FreshRSS/pull/1133 does not seem to work
anymore (need to check if it is related to a PHP version).
Work-around when PHP flush() is not working
Can be tested by adding a `sleep(5);` after:

ee902ee7c4/app/layout/layout.phtml (L27)
Follow-up of the performance checks of
https://github.com/FreshRSS/FreshRSS/pull/2040

* output_buffering in .user.ini for PHP CGI / FPM

* Reuse .user.ini for Docker PHP config

* Longer flush

Flush a bit later, to be compatible with the default value of 4096 for
PHP output_buffering, and thus avoid the need of tuning the value.
2018-10-14 14:37:50 +02:00
Alexandre Alapetite
c8b54ae807 Fix MySQL create table feeds (#2047)
https://github.com/FreshRSS/FreshRSS/issues/2042
2018-10-14 13:48:59 +02:00
Alexandre Alapetite
8221c807a1 Fix actualize bug after install (#2044)
Until the next logout/login, the auto actualize feeds feature would be
called wrongly
2018-10-14 12:36:54 +02:00
Alexandre Alapetite
83756c657f git clean before git auto-update (#2036)
* git clean before git auto-update

To avoid https://github.com/FreshRSS/FreshRSS/issues/2012 in the future

* More generic SQLite file filter

* Another -f

https://git-scm.com/docs/git-clean
2018-09-30 18:04:49 +02:00
Alexandre Alapetite
8ee8a573f1 Custom labels (#2027)
* First draft of custom tags

https://github.com/FreshRSS/FreshRSS/issues/928
https://github.com/FreshRSS/FreshRSS/issues/1367

* SMALLINT to BIGINT for id_entry

And uppercase SQL types

* Fix layout for unreads

* Start UI menu

* Change menu order

* Clean database helpers

https://github.com/FreshRSS/FreshRSS/pull/2027#discussion_r217971535

* Travis rules do not understand PostgreSQL constants

Grrr

* Tag controller + UI

* Add column attributes to tags

* Use only favicon for now, for label

* Fix styling for different themes

* Constant for maximum InnoDB index length in Unicode

https://github.com/FreshRSS/FreshRSS/pull/2027#discussion_r219052200
(I would have personnally prefered keeping the readability of a real
value instead of a constant, in this case of many SQL fields)

* Use FreshRSS_Factory::createCategoryDao

* Add view of all articles containing any tag

* Fix search in tags

* Mark as read tags

* Partial auto-update unread tags

* More auto update tag unreads

* Add tag deletion

* Do not purge tagged articles

* Minor comment

* Fix SQLite and UI bug

* Google Reader API support for user tags

Add SQL check that tag names must be distinct from category names

* whitespace

* Add missing API for EasyRSS

* Compatibility SQLite

Problematic parentheses

* Add SQL DISTINCT for cases with multiple tags

* Fix for PostgreSQL

PostgreSQL needs some additional type hint to avoid "could not determine
data type of parameter $1"

http://www.postgresql-archive.org/Could-not-determine-data-type-of-parameter-1-tp2171092p2171094.html
2018-09-29 20:47:17 +02:00
Alexandre Alapetite
4e8932d4bb Minz: fix absolute URL bug (#2006)
* Fix absolute URL bug

https://github.com/FreshRSS/FreshRSS/issues/1946

* Better base_url guess in install.php

* Revert changes in install.php
2018-09-09 00:51:02 +02:00
Alexandre Alapetite
d3f5bd840d Add mark-as-unread (#1995)
* Add mark-as-unread

https://github.com/FreshRSS/FreshRSS/issues/1966

* Change sentence

https://github.com/FreshRSS/FreshRSS/pull/1995#discussion_r214515954

* Enable mark-as-unread only when unread articles are shown

In order to prevent erroneous marking-as-unread.
We might find a better logic later.

* Disable instead of hide mark-as-unread option

To make it easier to discover
2018-09-03 20:48:04 +02:00
ColonelMoutarde
d38911e5b9 Better rand() (#1976)
http://php.net/manual/en/function.mt-rand.php

from php Doc

"Many random number generators of older libcs have dubious or unknown characteristics and are slow. The mt_rand() function is a drop-in replacement for the older rand(). It uses a random number generator with known characteristics using the » Mersenne Twister, which will produce random numbers four times faster than what the average libc rand() provides. "
2018-08-23 19:57:45 +02:00
ColonelMoutarde
7072c091a7 better rand() (#1978)
http://php.net/manual/en/function.mt-rand.php

from php Doc

"Many random number generators of older libcs have dubious or unknown characteristics and are slow. The mt_rand() function is a drop-in replacement for the older rand(). It uses a random number generator with known characteristics using the » Mersenne Twister, which will produce random numbers four times faster than what the average libc rand() provides. "
2018-08-23 19:56:48 +02:00
Alexandre Alapetite
99dfdbc10d Avoid feed credentials in logs (#1949)
* Avoid feed credentials in logs

Related to https://github.com/FreshRSS/FreshRSS/pull/1891

* Changelog 1949
2018-07-08 11:29:05 +02:00
Marien Fressinaud
44ee5ec70c [#1928] Login user automatically after creation (#1941) 2018-06-18 22:55:41 +02:00
Alexandre Alapetite
031acde003 Fix extension hook for updated articles (#1932)
* Fix extension hook for updated articles

https://github.com/FreshRSS/FreshRSS/issues/1926

* Enable extensions during PubSubHubbub

* A little array protection

* Changelog 1926

https://github.com/FreshRSS/FreshRSS/issues/1926
https://github.com/FreshRSS/FreshRSS/pull/1932

* Add null check
2018-06-13 09:27:02 +02:00
Alexandre Alapetite
6a56894e94 New extension event + Tumblr GDPR (#1924)
* New extension event + Tumblr GDPR

https://github.com/FreshRSS/FreshRSS/issues/1894
simplepie_before_init event

* Refactor extension enabling + Tumblr GDPR enabled by default

Add possibility for extensions to be enabled by default, and disabled
back by users.

* Minor whitespace
2018-06-09 15:58:18 +02:00
Alexandre Alapetite
4ec1ebade4 Feed attributes only for admin (#1905)
* Feed attributes only for admin

https://github.com/FreshRSS/FreshRSS/pull/1838

* Changelog 1905

https://github.com/FreshRSS/FreshRSS/pull/1905
2018-05-29 19:11:28 +02:00
Alexandre Alapetite
1801f44bfc Fix import: invalid variable scope (#1901)
* Fix import: invalid variable scope

https://github.com/FreshRSS/FreshRSS/issues/1890
https://github.com/FreshRSS/FreshRSS/pull/1315

* Changelog 1890

https://github.com/FreshRSS/FreshRSS/issues/1890
https://github.com/FreshRSS/FreshRSS/pull/1901
2018-05-28 23:33:48 +02:00
Alexandre Alapetite
4ff6613989 Fix CLI for creating/deleting user with Fever API (#1896)
* Fix CLI for creating user with Fever API

https://github.com/FreshRSS/FreshRSS/pull/1836

* Fix CLI for deleting user with Fever API

https://github.com/FreshRSS/FreshRSS/pull/1836
2018-05-26 11:44:17 +02:00
Kevin Papst
8f1bad60d0 Add Fever API and user documentation (#1836)
* added fever api and documentation

* spaces to tabs

* fixed code format

* added links

* added utf8 to header

* removed XML support

* removed before check, as we have to convert it afterwards

* added sandboxed setting (currently disabled)
added support for extensions using entry_before_display

* listFeedsOrderUpdate LIMIT

https://github.com/FreshRSS/FreshRSS/pull/1836/files#r175287881

* removed custom sql by using FreshRSS_FeedDAO::listFeedsOrderUpdate()

* fixed mark all as read

* replaced custom sql for getUnread() and getStarred() with dao functions

* removed sanitization functions

* Rework fever login

* Fix config bug

Plus documentation

* Fix array syntax

For compatibility with PHP 5.3

* Disable cookies and session for API

* Fix currentUser

* added response header and error log

* adjusted phpdoc to match new authentication

* Mechanism to delete old keys

* replace PHP_INT_MAX with zero to disable limit

* replace method_exists with check for explicit methods

* removed Press support and smaller refactoring + updated docu

* Rewrite bindParamArray

Avoid one of the SQL injection risks

* Docs and readme

* Fix API link

* Simplify reverse key check

Using userConfig
2018-05-24 21:53:47 +02:00
Alexandre Alapetite
b552abb332 JSON column for feeds (#1838)
* Draft of JSON column for feeds
https://github.com/FreshRSS/FreshRSS/issues/1654

* Add some per-feed options
  * Feed cURL timeout
  * Mark updated articles as read https://github.com/FreshRSS/FreshRSS/issues/891
  * Mark as read upon reception https://github.com/FreshRSS/FreshRSS/issues/1702
  * Ignore SSL (unsafe) https://github.com/FreshRSS/FreshRSS/issues/1811

* Try PHPCS workaround
While waiting for a better syntax support
2018-05-01 17:02:11 +02:00