Commit graph

356 commits

Author SHA1 Message Date
Kevin Decherf ad51743e8b
Show untagged entries count on tag list
Closes #3235

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2019-06-05 17:03:51 +02:00
Jeremy Benoist f277bc042c
Fix tests & cs & migration 2019-04-26 12:53:21 +02:00
Thomas Citharel 531c8d0a5c
Changed RSS to Atom feed and improve paging 2019-04-25 13:46:31 +02:00
Jeremy Benoist 4654a83b64
Hash backup codes in the database using password_hash 2019-01-23 14:43:39 +01:00
Jeremy Benoist c416ed485f
CS 2019-01-23 13:28:24 +01:00
Jeremy Benoist 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
Jeremy Benoist dfd0a7bc5f
Add backup codes 2019-01-23 13:28:03 +01:00
Jeremy Benoist 2dfbe9e5fa
Fix tests 2019-01-23 13:28:02 +01:00
Jeremy Benoist 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
Jeremy Benoist 50f35f0db2
Move icon into the top menu bar
Change the way to select a random entry:
- select all ids from the given user (with filters)
- choose randomly one in php
- find that entry
2019-01-19 22:24:10 +01:00
Jeremy Benoist 9a57653aec
Redirect to the current view instead of homepage 2019-01-19 21:10:16 +01:00
Jeremy Benoist 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
Jeremy Benoist f85d220c19
Fix tests 2019-01-19 21:09:33 +01:00
Nicolas Lœuillet 09ef25c3c3
Added random feature 2019-01-19 21:09:32 +01:00
Jeremy Benoist 5419a8368e
Merge remote-tracking branch 'origin/master' into 2.4 2019-01-15 09:41:18 +01:00
Kevin Decherf f810834623 EntriesExport: change authors and title when not single entry export
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>
2019-01-07 21:44:14 +01:00
Jérémy Benoist e673b54f70
Merge pull request #3574 from shulard/feature/rename-tags
Allow to rename tags from the web interface.
2018-10-15 08:32:59 +00:00
Jeremy Benoist 4d4147b228
Ensure language is valid
- Do not override locale if user has choosen a locale from the login screen.
- Add some tests about locale url
2018-10-13 09:39:00 +02:00
Nicolas Lœuillet be417ef236
Added possibility to change locale from login/register pages 2018-10-13 09:39:00 +02:00
Jeremy Benoist 115de64e5b
Jump to Symfony 3.4
Thanks to the BC compatibility, almost nothing have to be changed.
All changes are related to new bundle version of:
- SensioFrameworkExtraBundle
- DoctrineFixturesBundle
2018-10-04 14:11:57 +02:00
Stéphane HULARD b846c1e4d0
Add RenameForm as tag list view parameters.
This will help handling the CSRF protection token and use symfony HTML generation layer.
Also a FormView instance is generated for each tag because we need to render a form for each tag and FormView are not reusable.
2018-09-25 10:18:08 +02:00
Stéphane HULARD be326a22f9
Create a new Tag action to rename tags.
The current tag is removed from all the current logged user entries. Then the new one is created and attached.
2018-09-25 10:18:08 +02:00
Jeremy Benoist 9007fe0062
Sort archive page by archived at 2018-09-21 11:18:29 +02:00
Kevin Decherf 2a1ceb67b4 php-cs-fixer
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2018-09-05 14:25:32 +02:00
Jeremy Benoist 778543311f
Fix tests 2018-06-06 17:34:20 +02:00
Kevin Decherf af29e1bf07 Fix empty title and domain_name when exception is thrown during fetch
Add a new helper to set a default title when it's empty:
1/ use basename part of entry's path, if any
2/ or use domain name

Fixes #2053

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-12-13 22:44:31 +01:00
Jeremy Benoist ef2b4041fb
Disable controller access if feature disabled
If `restricted_access` is disabled, accessing `/site-credentials/` must be disabled.
2017-11-22 10:00:45 +01:00
Jeremy Benoist 3ef055ced3
CS 2017-10-09 16:47:15 +02:00
François D a991c46eed Set a starred_at field when an entry is starred.
This date is used to sort starred entries.

Can not use Entry::timestamps method otherwise starred_at will be updated each time entry is updated.
Add an updateStar method into Entry class
A migration script has been added in order to set starred_at field.
2017-08-25 21:19:47 +02:00
Nicolas Hart 935e9fffb4 Reduce number of queries on tag list 2017-08-06 23:02:32 +02:00
Nicolas Hart 383215866f add a dedicated title for all entries page 2017-07-27 23:08:08 +02:00
Étienne Gilli 07320a2bd2 Use the article domain as author for export files
When exporting an entry, use the domain name as author name for epub,
mobi and pdf formats, instead of 'wallabag'.
Change the author from array to string, because for now, there is always
only one author.
2017-07-08 19:53:43 +02:00
Jeremy Benoist 38520658ad
Fix tests 2017-07-03 07:30:54 +02:00
Jeremy Benoist f808b01692
Add a real configuration for CS-Fixer 2017-07-01 09:52:38 +02:00
Thomas Citharel bd40f1af88
Add all entries RSS feed and put links on tag page itself and baggy too
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-06-21 12:02:04 +02:00
Jeremy Benoist ebf2d92327
Fix typo 2017-06-21 11:44:36 +02:00
Jeremy Benoist 03ce43d466
Fix getContainer in command 2017-06-21 11:44:35 +02:00
Jeremy Benoist 18c38dffc6
Add RSS tags feeds 2017-06-21 11:44:35 +02:00
Jeremy Benoist 25203e5081
User existing service instead of getDoctrine 2017-06-21 11:44:35 +02:00
Thomas Citharel bead8b42da
Fix reviews
Encrypt username too
Redirect to list after saving credentials
Fix typos

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-06-20 16:03:39 +02:00
Jeremy Benoist 906424c1b6
Crypt site credential password 2017-06-20 16:03:35 +02:00
Jeremy Benoist 9de9f1e5ce
Add a live test for restricted article
It is not aimed to test if we can get the full article (since we aren't using real login/password)
but mostly to test the full work (with authentication, etc.)

Do not clean fixtured to avoid SQLite to re-use id for entry tag relation 😓
2017-06-20 16:03:20 +02:00
Jeremy Benoist fc6d92c63d
Update route & user verification 2017-06-20 16:03:13 +02:00
Jeremy Benoist f92fcb53ca
Add CRUD for site credentials 2017-06-20 16:03:08 +02:00
Thomas Citharel be9d693e74 remove craueconfig domain name setting and add a proper one in parameters 2017-06-06 15:36:21 +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
Jerome Charaoui 1c5da417e4
Put default fetching error title in global config 2017-06-01 09:43:01 +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
Jeremy Benoist 53da8ad844
Page parameter was never used in the function
It could have been used if we set the current page inside PreparePagerForEntries.
But we did that in each controller because we can have an OutOfRangeCurrentPageException
2017-06-01 09:29:18 +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
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
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
Nicolas Lœuillet 13a592a128
Renamed methods 2017-03-31 17:03:08 +02:00
Nicolas Lœuillet e682a70f88
Refactored code 2017-03-31 11:04:18 +02:00
Thomas Citharel 6da1aebc94 Allow to remove all archived entries
Since we still support fucking SQLite, we need to retrieve all tags & annotations for archived entries before deleting them.

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-03-31 10:46:05 +02:00
Thomas Citharel 273b6f0658 Rename method from *username to *user
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-03-30 16:07:48 +02:00
Nicolas Lœuillet 8527238846 Merge pull request #2702 from wallabag/add-index-uuid
Added index on entry.uuid
2016-12-29 10:54:07 +01:00
Nicolas Lœuillet 7239082a5e
Renamed uuid to uid 2016-12-29 10:09:44 +01:00
Nicolas Lœuillet c8de7ab94c
Fixed export by tags with a tag which contains space 2016-12-27 21:26:53 +01:00
Nicolas Lœuillet 89cd670abf Changed uuid type in database 2016-12-25 10:51:25 +01:00
Nicolas Lœuillet 8137515171 Fixed index on entry.uuid and changed uuid field type 2016-12-25 10:51:25 +01:00
Nicolas Lœuillet 5a5da36955
Removed outputWalkers for RSS and API 2016-12-15 22:22:57 +01:00
Nicolas Lœuillet 9deac0c597
Removed outputWalkers for pagination
Due to overload, we disabled output walkers (see https://github.com/whiteoctober/Pagerfanta/issues/115
2016-12-15 22:22:56 +01:00
Nicolas Lœuillet 6ad8aabb83
Fixed search bug 2016-12-15 21:38:16 +01:00
Jeremy Benoist 21e7ccef3d
Fix tests & deprecation notice 2016-12-15 21:38:16 +01:00
Nicolas Lœuillet 9aa991281d
Renamed view_mode by list_mode and hide excerpt 2016-11-28 16:10:21 +01:00
Nicolas Lœuillet 9f01d0fde0 Added list view 2016-11-28 14:27:58 +01:00
Jeremy Benoist 8670250a26
Add RSS pagination
Following https://tools.ietf.org/html/rfc5005#page-4
2016-11-20 09:39:26 +01:00
Nicolas Lœuillet 49b042dfdf Added translations and currentRoute parameter 2016-11-19 19:17:30 +01:00
Nicolas Lœuillet ee122a7528 Added a simple search engine
Fix #18
2016-11-19 19:17:30 +01:00
Jeremy Benoist 68003139e1
Merge remote-tracking branch 'origin/master' into 2.2
# Conflicts:
#	.editorconfig
#	docs/de/index.rst
#	docs/de/user/import.rst
#	docs/en/index.rst
#	docs/en/user/configuration.rst
#	docs/en/user/import.rst
#	docs/fr/index.rst
#	docs/fr/user/import.rst
#	src/Wallabag/CoreBundle/Command/InstallCommand.php
#	src/Wallabag/CoreBundle/Resources/translations/messages.da.yml
#	src/Wallabag/CoreBundle/Resources/translations/messages.de.yml
#	src/Wallabag/CoreBundle/Resources/translations/messages.en.yml
#	src/Wallabag/CoreBundle/Resources/translations/messages.es.yml
#	src/Wallabag/CoreBundle/Resources/translations/messages.fa.yml
#	src/Wallabag/CoreBundle/Resources/translations/messages.fr.yml
#	src/Wallabag/CoreBundle/Resources/translations/messages.it.yml
#	src/Wallabag/CoreBundle/Resources/translations/messages.oc.yml
#	src/Wallabag/CoreBundle/Resources/translations/messages.pl.yml
#	src/Wallabag/CoreBundle/Resources/translations/messages.pt.yml
#	src/Wallabag/CoreBundle/Resources/translations/messages.ro.yml
#	src/Wallabag/CoreBundle/Resources/translations/messages.tr.yml
#	src/Wallabag/CoreBundle/Resources/views/themes/baggy/Config/index.html.twig
#	web/bundles/wallabagcore/themes/baggy/css/style.min.css
#	web/bundles/wallabagcore/themes/baggy/js/baggy.min.js
#	web/bundles/wallabagcore/themes/material/css/style.min.css
#	web/bundles/wallabagcore/themes/material/js/material.min.js
2016-11-19 15:30:49 +01:00
Nicolas Lœuillet ece4718f63
Changed behavior when we change language
No need to disconnect to apply the language substitution
2016-11-10 20:54:20 +01:00
Jeremy Benoist 001cc7168a
Cleanup 2016-11-03 18:01:25 +01:00
Jeremy Benoist 5a619812ca
Merge remote-tracking branch 'origin/master' into 2.2 2016-11-03 16:41:29 +01:00
Jeremy Benoist da41365579 Merge pull request #2180 from wallabag/download-pictures
Download pictures
2016-11-03 16:22:07 +01:00
Jeremy Benoist e0597476d1
Use custom event instead of Doctrine ones
This give us ability to use Entry ID to determine where to store images and it’s then more easy to remove them when we remove the entry.
2016-11-01 14:49:02 +01:00
Nicolas Lœuillet e61ee56031 Added QRCode and link to configure android application 2016-10-31 16:18:52 +01:00
Nicolas Lœuillet 920d88599a Fixed entries export filtered with a tag
Fix #2505
2016-10-29 13:43:11 +02:00
Nicolas Lœuillet 7a5043f187
Added tag label in the page title
Fix #2472
2016-10-26 13:53:23 +02:00
Jeremy Benoist 64a8781e45
Merge remote-tracking branch 'origin/master' into 2.2 2016-10-24 12:03:17 +02:00
Jeremy Benoist b0de88f75d
Use statements & update translation 2016-10-22 13:13:07 +02:00
Jeremy Benoist 8c61fd12b1
CS 2016-10-22 13:13:07 +02:00
Jeremy Benoist f71e55ac88
Avoid orphan tags 2016-10-22 13:13:07 +02:00
Jeremy Benoist 191564b7f7
Add custom doctrine subscriber for SQLite
Since SQLite doesn’t handle cascade remove by default, we need to handle it manually.

Also some refacto
2016-10-22 13:13:07 +02:00
Jeremy Benoist 206bade58a
Add ability to reset some datas
- annotations
- tags
- entries
2016-10-22 13:13:06 +02:00
Jeremy Benoist 2297d60f10
If reload content failed, don’t update it
In case user wants a fresh version of the current one and the website isn’t available, don’t erase it with a boring message saying wallabag wasn’t able to refresh the content.
2016-10-20 22:49:46 +02:00
Jeremy Benoist e4cf672ccf
Merge remote-tracking branch 'origin/master' into 2.2 2016-10-11 21:01:30 +02:00
Jeremy Benoist 28bb48905a
Optimize the way tag list is rendered
Instead of retrieve all informations about entries of a tag to just count them, we’ll count them before with a fastest query.

Also change the layout of the tag list in material design
2016-10-09 18:55:22 +02:00
Jeremy Benoist 7ac3e575f1
CS 2016-10-08 20:35:16 +02:00
Jeremy Benoist eed812afd0
Logout user before deleting it
And add a smal description
2016-10-08 19:39:12 +02:00
Nicolas Lœuillet 93a95c09bf Merge pull request #2351 from wallabag/fix-api-client-deletion
Changed relation between API client and refresh token
2016-10-08 13:31:54 +02:00
Nicolas Lœuillet bb0c78f4a6
Added check if there is only one user
Added translations and documentation
2016-10-08 13:27:18 +02:00
Thomas Citharel abb5291cd5
CS 2016-10-08 13:27:17 +02:00
Thomas Citharel e4b46f77ef
work 2016-10-08 13:27:17 +02:00
Jeremy Benoist ee32248f43
Ensure access_token are removed
When we remove the client, we should ensure that access_token are also removed.

To ensure that, I created a test that generated an access_token. So when we remove the client, this association should be cascaded and shouldn’t generate an error.

Also I moved some Api related stuff to the ApiBundle (like the developer controler and ClientType form)
2016-10-08 00:05:41 +02:00
Jeremy Benoist ac8cf632bb
Ensure orphan tag are remove in API
When the association between a tag and an entry is removed, if the tag doesn’t have other entries, we can remove it.

Also add more tests for that part and ensure TagControllerTest is isolated from the rest of the test suite (finally!)
2016-10-07 23:31:53 +02:00
Jeremy Benoist 03141f9b95
Cleanup & add link on baggy menu 2016-10-02 11:08:53 +02:00
Jeremy Benoist 152fcccd44
Add users management UI
- remove the “add a user” from the config page
- add a CRUD on user
- fix some missing translations (+ bad indentation)
2016-10-02 11:08:53 +02:00
Jeremy Benoist 2455472e26
CS 2016-10-01 18:05:25 +02:00
Jeremy Benoist 8799bde00d
Introduce validateRuleAction 2016-10-01 17:24:24 +02:00