Commit graph

282 commits

Author SHA1 Message Date
Jeremy Benoist
e9056dd96f
Fix test
de_DE is not valid language.
Zataz doesn’t send a valid language in their content (they use `fr-FR`).
2017-06-08 22:51:30 +02:00
Jeremy Benoist
0d349ea670
Validate language & preview picture fields
Instead of saving the value of each field right into the content without any validation, it seems better to validate them.
This might sounds obvious now we say that.
2017-06-08 21:51:46 +02:00
Jeremy Benoist
a8d3fe50df
Add ability to name the client 2017-06-08 14:25:44 +02:00
Jeremy Benoist
eb570e49c8
CS 2017-06-07 23:31:14 +02:00
Jeremy Benoist
0c00e52516
Create a client when creating a user using the api
While creating a new user using the API, we also create a new client for the current user.
So the app which just create the user can use its newly created client to configure the app.

That new client is only return after creating the user.
When calling the endpoint /api/user to get user information, the new client information won’t be return.
2017-06-07 23:23:28 +02:00
Nicolas Lœuillet
7bb3aa3177 Merge pull request #3093 from aaa2000/annotation-error-on-save
Displays an error with an annotation with a too long quote
2017-06-07 16:30:27 +02:00
Jérémy Benoist
c0d756f67d Merge pull request #3181 from wallabag/api-content-patch
Add ability to patch an entry with more fields
2017-06-07 15:40:59 +02:00
Jérémy Benoist
4e4a5b534f Merge pull request #3184 from wallabag/better-way-image-extension
Use an alternative way to detect images
2017-06-07 13:41:25 +02:00
Jérémy Benoist
a3f16a5685 Merge pull request #3179 from wallabag/show-user-command
Show user command
2017-06-07 09:40:56 +02:00
Jeremy Benoist
577c0b6dd8
Use an alternative way to detect image
When parsing content to retrieve images to save locally, we only check for the content-type of the image response.
In some case, that value is empty.
Now we’re also checking for the first few bytes of the content as an alternative to detect if it’s an image wallabag can handle.
We might get higher image supports using that alternative method.
2017-06-05 22:54:02 +02:00
Thomas Citharel
0d8ecb82a3 Fix review
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-06-04 17:57:40 +02:00
adev
2c3e148b00 Displays an error with an annotation with a too long quote
Fix #2762
2017-06-04 11:38:29 +02:00
Jeremy Benoist
645291e8fe
Add ability to patch an entry with more fields
Like when we create an entry, we can now patch an entry with new fields:
- content
- language
- preview_picture
- published_at
- authors
2017-06-02 20:52:49 +02:00
Jeremy Benoist
a1e6187406
Return 201 on user creation 2017-06-02 20:03:25 +02:00
Thomas Citharel
d143fa243d Add show user command
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-06-02 16:53:03 +02:00
Jeremy Benoist
426bb453d2
API user creation behing a toggle
I've added a toggle feature (in internal settings) so that user api creation can be disabled while form registration still can be enabled.
Also, the /api/user endpoint shouldn't require authentication. Even if we check the authentication when sending a GET request, to retrieve current user information.

I've moved all the internal settings definition to config to avoid duplicated place to define them.
I don't know why we didn't did that earlier.
2017-06-02 11:32:38 +02:00
Jérémy Benoist
a687c8d915 Merge pull request #2708 from jcharaoui/import-disablecontentupdate
Import disableContentUpdate
2017-06-02 11:26:37 +02:00
Jeremy Benoist
fcad69a427
Replace images with &
Images with `&` in the path weren’t well replaced because they might be with `&amp;` in the html instead.

Replacing `&` with `&amp;` fix the problem.
2017-06-01 22:50:33 +02:00
Jeremy Benoist
6acadf8e98
Rewrote code & fix tests 2017-06-01 11:31:45 +02:00
Jeremy Benoist
d5c2cc54b5
Fix tests 2017-06-01 09:49:15 +02:00
Jerome Charaoui
704803e182
Replace Wallabag v1 error strings with v2 strings 2017-06-01 09:48:14 +02:00
Jerome Charaoui
d0e9b3d640
Add disableContentUpdate import option
This commit also decouples the "import" and "update" functions inside
ContentProxy. If a content array is available, it must be passed to the
new importEntry method.
2017-06-01 09:48:14 +02:00
Jerome Charaoui
7aba665e48
Avoid returning objects passed by reference.
Objects are always passed by reference, so it doesn't make sense to
return an object which is passed by reference as it will always be the
same object. This change makes the code a bit more readable.
2017-06-01 09:43:01 +02:00
Jérémy Benoist
2a0eec07a5 Merge pull request #3137 from aaa2000/isolated-tests
Isolated tests
2017-06-01 07:58:17 +02:00
adev
7ab5eb9508 Isolated tests
Use https://github.com/dmaicher/doctrine-test-bundle to have test isolation.
2017-05-31 16:03:54 +02:00
Jeremy Benoist
695af58857
Fix tests following rebase 2017-05-31 14:00:15 +02:00
Jeremy Benoist
38a04dee34
CS 2017-05-31 14:00:15 +02:00
Jeremy Benoist
f0378b4d7c
Forced date can now be a timestamp too
Add adding more tests for forced content
2017-05-31 14:00:15 +02:00
Jeremy Benoist
0d6cfb884c
Remove htmlawed and use graby instead
Instead of using htmlawed (which is already used in graby) use graby directly (which require some refacto on graby side).
Still needs some tests.
2017-05-31 14:00:15 +02:00
Jeremy Benoist
cf05a1ae34
Reduce imported entries
Down from 2.2 minutes to 1.39 minutes
2017-05-31 14:00:15 +02:00
Jeremy Benoist
74a75f7d43
Use graby ContentExtractor to clean html
It might be better to re-use some graby functionalities to clean html instead of building a new system.
2017-05-31 14:00:15 +02:00
Jeremy Benoist
fb436e8ca0
Add support for authors 2017-05-31 13:59:45 +02:00
Jeremy Benoist
e668a8124c
Allow other fields to be send using API
Entry API can now have these new fields:
- content
- language
- preview_picture
- published_at

Re-use the ContentProxy to be able to do the same using the web UI (in the future).
htmLawed is used to clean stuff from content, I hope it’ll be enough to avoid security breach.

Lower content validation when we want to update an entry with content already defined. Before, language & content_type were required. If there weren’t provided, we re-fetched the content using graby. I think these fields aren’t required for an entry to be created. So I removed them.
Which means some import from the v1 export won’t be re-fetched since they provide content, url & title.

Also, remove liberation link from Readability import to avoid overlaping import (from wallabag v1, which had the same link)
2017-05-31 13:59:45 +02:00
Nicolas Lœuillet
4423b88c5b Merge pull request #3168 from wallabag/instapaper-tags-import
Add support for tag in Instapaper import
2017-05-31 12:32:09 +02:00
Nicolas Lœuillet
d61fd8be4f Merge pull request #3138 from Kdecherf/2835-tags
Ignore ActionMarkAsRead when removing tag from entry
2017-05-31 11:48:42 +02:00
Nicolas Lœuillet
3f8578ded3 Merge pull request #3161 from wallabag/scrutinizer-2.3
Fix some Scrutinizer issues
2017-05-31 11:46:41 +02:00
Jeremy Benoist
31485bddb9
Ensure retrieved data are fresh 2017-05-31 11:11:02 +02:00
Jeremy Benoist
bad7df8c00
CS & improve tags assertions 2017-05-31 10:38:15 +02:00
Jeremy Benoist
7a8ed3cee1
Add support for tag in Instapaper import 2017-05-31 10:38:00 +02:00
Nicolas Lœuillet
7aa5607f29 Merge pull request #3143 from wallabag/fix-wllbg2-import
Fixed is_starred for wallabag v2 import
2017-05-31 09:08:34 +02:00
Kevin Decherf
5dbf3f2326 TagController: ignore ActionMarkAsRead when removing tag from entry
Fixes #2835

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-05-31 00:36:46 +02:00
Jeremy Benoist
047fdc767a
Add tests 2017-05-30 20:27:44 +02:00
Jérémy Benoist
2150576d86 Merge pull request #3065 from wallabag/api-creation-endpoint
Register through API
2017-05-30 15:26:11 +02:00
Jeremy Benoist
26650fdbf8
Use a better way to set input for command
Actually use the correct to way handle that

http://symfony.com/doc/current/components/console/helpers/questionhelper.html#testing-a-command-that-expects-input
2017-05-30 12:47:28 +02:00
Jeremy Benoist
d181bd7285
Merge remote-tracking branch 'origin/master' into 2.3 2017-05-30 09:59:06 +02:00
Jeremy Benoist
fe6461e4aa
Avoid side effect on other tests 2017-05-30 09:57:57 +02:00
Jeremy Benoist
d069bff4f6
Remove unknown validation_groups
The Profile validation_groups does not exist and then for validation to be skipped (like password length)
2017-05-30 08:04:11 +02:00
Jeremy Benoist
5709ecb368
Re-use NewUserType to validate registration
The only ugly things is how we handle error by generating the view and then parse the content to retrieve all errors…

Fix exposition fields in User entity
2017-05-30 07:56:01 +02:00
Thomas Citharel
de8d2a9005 CS
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-05-28 12:59:48 +02:00
Thomas Citharel
6bc6fb1f60 Move Tags assigner to a separate file
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-05-27 22:08:14 +02:00