Simplify the logic from #3158 by hashing all the urls from the request,
and only doing a search by hash. This allows to get performance benefits
from the new indexed hash column even when using older clients that do
not hash the URL in the request.
Fixes: #3158, #3919
Signed-off-by: Olivier Mehani <shtrom@ssji.net>
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>
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>
Essentially, same as commit 038fccd for single entry views. From that commit:
> Showing the preview picture usually leads to showing a duplicate
> image, and frequently leads to showing duplicate images directly
> adjacent to each other.
Add reading time and creation date to rows of list view.
Refactor styles using a sass mixin.
Fixes#3838
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
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.
This commit fixes an exception occuring when exporting as epub several
articles with the same title. The chapter filename is now derived from
title and url.
Fixes#3642
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
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>
- 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
- 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
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.
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.
Add metadata to the cover of each entry:
- Publishers
- Estimated reading time
- Date of creation ("Added on")
- Address (URL)
Related to #2821
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
Change '{method} authors' (which gives 'Tag_entries authors' when
exporting a tag) to 'Various authors'.
When exporting a tag (tag_entries), change the title from 'Tag_entries
articles' to 'Tag {tag} articles'.
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
This commit renames entry chapters file using a sha1 sum of their title
for simplicity. Also we fix the 'Title' chapter duplicate issue by using
the hash of the related entry and the suffix '_title'.
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
This change only remove the rendered page of the TOC at the end of the
book, the TOC remains available to readers.
Fixes#3603
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
We replace the title used as the unique identifier of the epub file with
a urn following the format:
urn:wallabag:{sha1("wallabagUrl:listOfEntryIdsSeparatedByComma")}
This format is repeatable: it always gives the same uid for the same
list of entries.
Fixes#3811
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>