Commit Graph

493 Commits

Author SHA1 Message Date
b7fa51ae7d Added given_url in entry table
- Added index on entry table for given_url field
- Fix tests:

    The previous `bit.ly` url redirected to doc.wallabag but that url doesn't exist in the fixtures.
    I used our own internal "redirector" to create a redirect to an url which exist in the fixtures.

Also, updating current migration to use the new `WallabagMigration`.
2019-05-29 13:50:59 +02:00
6e68417f03 Fix tests after rebase 2019-05-28 12:02:17 +02:00
36b0d52ee4 CS & fix tests 2019-05-28 11:44:21 +02:00
b6c1e1bacc Fix some tests 2019-05-28 11:44:20 +02:00
448d99f84e CS 2019-05-28 11:42:27 +02:00
5f08426201 Fix because of some breaking changes of Graby 2.0 2019-05-28 11:42:27 +02:00
bf9ace0643 Use httplug 2019-05-28 11:40:41 +02:00
92a6683562 Merge remote-tracking branch 'origin/master' into 2.4 2019-05-27 10:46:01 +02:00
d6cc0b249e Fix test 2019-05-27 09:38:07 +02:00
d99e6423f4 [tests] Fix pre-existing tests (preview now imported + records added) 2019-05-21 20:38:22 +02:00
715fabf8f2 [tests] Set first picture as preview picture 2019-05-21 20:38:22 +02:00
a2b5d67560 Merge pull request #3960 from wallabag/api-entries-2817
api/entries: add parameter detail to exclude or include content in response
2019-05-21 11:18:19 +02:00
feb239ea10 mysql: change collation of tag table
utf8mb4_unicode_ci considers that 'caché' is equal to 'cache' which
can lead to attaching incorrect tags to entries. This issue is due to
some unicode normalization done by MySQL.

utf8mb4_bin makes no unicode normalization, letting wallabag to consider
'cache' and 'caché' as two different tags.

We change the collation of the whole table as Doctrine does not support
setting a collation on a column for a specific platform (it tries to
apply utf8mb4_bin even for pgsql and sqlite).

Fixes #3302

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2019-05-19 23:37:49 +02:00
2c290747cb api/entries: add parameter detail to exclude or include content in response
detail=metadata will nullify the content field of entries in order to
make smaller responses.

detail=full keeps the former behavior, it sends the content of entries.
It's the default, for backward compatibility.

Fixes #2817

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2019-05-18 18:11:08 +02:00
b8b37ccdea CS 2019-05-15 14:58:40 +02:00
9f0957b831 Merge remote-tracking branch 'origin/master' into 2.4 2019-05-15 14:38:07 +02:00
77bd7f690d CS 2019-05-10 15:49:39 +02:00
68a90821a3 Handle redirection from previous feeds 2019-04-26 13:40:58 +02:00
f277bc042c Fix tests & cs & migration 2019-04-26 12:53:21 +02:00
531c8d0a5c Changed RSS to Atom feed and improve paging 2019-04-25 13:46:31 +02:00
35359bd3c6 Adding more tests to cover different scenario 2019-04-24 15:28:15 +02:00
ff8f338dc2 FIx unrelated failing test 2019-04-23 22:48:04 +02:00
f45496336f Add ability to match many domains for credentials
Instead of fetching one domain, we use the same method as in site config (to retrieve the matching file) and handle api.example.org, example.org, .org (yes the last one isn’t useful).
If one of these match, we got it and use it.
2019-04-23 22:39:31 +02:00
c579ce2306 Some cleanup
Also, do not run the hashed_url migration into a Doctrine migration
2019-04-01 14:34:20 +02:00
8a64566298 Use a better index for hashed_url
It'll most often be used in addition to the `user_id`.
Also, automatically generate the hash when saving the url.
Switch from `md5` to `sha1`.
2019-04-01 13:51:57 +02:00
9c2b2aae70 Keep url in exists endpoint
- Add migration
- Use md5 instead of sha512 (we don't need security here, just a hash)
- Update tests
2019-04-01 13:24:40 +02:00
bfe02a0b48 Hash the urls to check if they exist
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-01 13:24:40 +02:00
3620dae1e6 Merge remote-tracking branch 'origin/master' into 2.4 2019-04-01 13:16:15 +02:00
8c0ba95307 Adding more tests 2019-02-27 15:01:03 +01:00
12a97c3522 tests: fix broken session clients for rest entry deletion tests
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2019-02-20 15:57:56 +01:00
508302042f EntryRestController: add support of expect parameter to delete action
The expect parameter enables an application to request the whole entry
or only the id when requesting its deletion.

`expects` defaults to `entry` to prevent any API breakage.

Fixes #3711

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2019-02-20 15:57:50 +01:00
4e0ed3368d tests: create entry for testDeleteEntry, fix missing id
When using the entity manager to retrieve an already stored entry, the
id disapears from $entry after the first delete call. This leads to
testing a nonexistent endpoint (api/entries/.json) during the second
delete call.

This change now creates an entry specifically for the test.

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2019-02-17 15:25:21 +01:00
18460b2d79 Merge remote-tracking branch 'origin/master' into 2.4 2019-02-07 18:01:15 +01:00
8d082488e9 Improve checks & add tests 2019-01-28 06:03:16 +01:00
a0c5eb003f Change the way to enable 2FA
And add a step to validate a generated code from the OTP app
2019-01-23 13:28:24 +01:00
edc79ad886 Fix test for custom version of the tidy extension 2019-01-23 13:28:02 +01:00
a6b242a1fd Enable OTP 2FA
- Update SchebTwoFactorBundle to version 3
- Enable Google 2fa on the bundle
- Disallow ability to use both email and google as 2fa
- Update Ocramius Proxy Manager to handle typed function & attributes (from PHP 7)
- use `$this->addFlash` shortcut instead of `$this->get('session')->getFlashBag()->add`
- update admin to be able to create/reset the 2fa
2019-01-23 13:28:02 +01:00
019e1acc49 Factorize sendResponse between Api controllers
And run newer cs fixer
2019-01-22 20:42:25 +01:00
9133bd02d1 [wallabag/wallabag#2611] Fix PHPCS lint errors 2019-01-22 20:42:25 +01:00
b32057980e Fixes [wallabag/wallabag#2611] Add a basic Search REST endpoint
- Adds a new `search` key to `src/Wallabag/ApiBundle/Resources/config/routing_rest.yml`
- Reuses the `getBuilderForSearchByUser` method from the EntryRepository
- Supports, `term`, `page`, and `perPage` query parameters
- Some very basic tests
2019-01-22 20:42:24 +01:00
0447a75b06 Use only one method to randomize
Instead of one per type, one for all is ok.
2019-01-19 21:09:33 +01:00
1e0d8ad7b7 Enable PHPStan
- Fix error for level 0 & 1 (level 7 has 699 errors...)
- Add `updated_at` to site_credential (so the `timestamps()` method applies correctly)
2019-01-18 15:25:50 +01:00
3bd65991ad Add a new endpoint to retrieve information from the wallabag instance
Useful for api client which required some information.
We might add more inside them in the future.

The endpoint /api/version should be avoided now as it contains not so much information rather the version.
2019-01-15 10:17:11 +01:00
5419a8368e Merge remote-tracking branch 'origin/master' into 2.4 2019-01-15 09:41:18 +01:00
78e3fafa3f Avoid error when a bad order parameter is given
Only allowed parameter are asc & desc
2019-01-14 17:01:21 +01:00
3625833b2c Merge pull request #3826 from wallabag/epub-toc
Rework of EPUB/PDF exports
2019-01-11 13:34:38 +01:00
03663530ed Merge pull request #3831 from wallabag/fix/api-bad-client-id
Cast client id to avoid PG error
2019-01-10 17:03:03 +01:00
3a2d4cf9fd Cast client id to avoid PG error
If someone send a malformated client_id when trying to authenticate using the API we got a 500 if wallabag use postgres because the request send a string instead of an integer.
2019-01-09 23:31:14 +01:00
dac93644e8 EntriesExport: sanitize filename and fix tests
Filename will now only use a-zA-Z0-9-' and space.

Fixes remaining filename issue on #3811

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2019-01-08 15:13:35 +01:00
d2aec7096d Merge pull request #3820 from lizyn/bugfix/incorrect-calculation-of-CJK-characters-in-reading-time-estimation
Fix incorrect reading time calculation for entries with CJK characters
2019-01-07 10:17:29 +01:00