Commit graph

174 commits

Author SHA1 Message Date
Kevin Decherf 6708bf238d TagRepository: refactor query builder for queries by userId
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2018-12-30 01:34:44 +01:00
Jeremy Benoist 9007fe0062
Sort archive page by archived at 2018-09-21 11:18:29 +02:00
Sébastien Viande 7c0d682687
Code Style 2018-09-21 10:33:33 +02:00
Sébastien Viande 0e70e81227
Entry: add sort parameter archived 2018-09-21 10:33:33 +02:00
Jeremy Benoist 17476f4d8d
Add missing parameters
Parameters weren’t passed to the sub function.
2018-09-07 13:56:14 +02:00
Kevin Decherf b8115ff46b php-cs-fixer
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2018-09-05 18:44:08 +02:00
Kevin Decherf 0636697289 EntryRepository: refactor getBuilderForUntaggedByUser
Improve SQL performance by replacing size(e.tags) with a left join and a
null condition

Move the QueryBuilder logic into getRawBuilderForUntaggedByUser

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2018-09-05 18:44:08 +02:00
Kevin Decherf b7c5fda512 EntryRepository: refactor getBuilderByUser
We refactor getBuilderByUser to separate QueryBuilder getter and the
orderBy(). The previous code of getBuilderByUser() has been moved to
getSortedQueryBuilderByUser(). getBuildByUser() now returns a
QueryBuilder without the call to orderBy().

A new method named sortQueryBuilder() returns a given QueryBuilder with
an orderBy() call using given sort parameters.

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2018-09-05 18:44:08 +02:00
Kevin Decherf 2a1ceb67b4 php-cs-fixer
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2018-09-05 14:25:32 +02:00
Sébastien Viande fafdf17117 Fix #3361 check type for tags in entry repository
Check is $tags is a string before explode
2017-10-12 07:38:27 +02:00
Jeremy Benoist 9c4a7388da
Remove unused function
Introduce after the rebase I guess
2017-09-06 22:58:35 +02:00
Jeremy Benoist 33264c2d02
Fix tests 2017-09-06 22:49:16 +02:00
Jeremy Benoist 7c04b7396a
Multiple tag search was broken from API
First, the setParameter() were done on the same parameter which in fact
just duplicated the condition in the SQL query (like `where t.label =
'test' and t.label = 'test'`.

Changed the parameter doesn't help because the query was then wrong.

Changing the way to match associated tags for an entry and it worked.
2017-09-06 22:49: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 dbf1188c5b rename getAllEntriesIdAndUrl into findAllEntriesIdAndUrlByUserId 2017-08-22 10:42:54 +02:00
Nicolas Hart 215409a8b2 rename getAllEntriesId into findAllEntriesIdByUserId 2017-08-22 10:41:28 +02:00
Nicolas Hart 511f1ce1e8 Add reload entry command 2017-08-21 10:45:48 +02:00
Nicolas Hart 935e9fffb4 Reduce number of queries on tag list 2017-08-06 23:02:32 +02:00
Nicolas Hart 52b84c11a5 Fix some namespaces and phpdoc 2017-07-29 22:51:50 +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
Jérémy Benoist 80784b782b Merge pull request #2683 from wallabag/credentials-in-db
Store credentials in DB
2017-06-20 16:40:48 +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 5a9bc00726
Retrieve username/password from database
Inject the current user & the repo to retrieve username/password from the database
2017-06-20 16:03:13 +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
Jeremy Benoist 1112e54772
Add public filter/field in the API
Listing entries can now be filtered by “public”.
Creating or patching an entry can now set is to public or remove the public.
Entry response now include “is_public” boolean field
2017-06-10 15:31:57 +02:00
Nicolas Lœuillet 89f108b45a
Fixed @j0k3r review 2017-05-05 14:54:03 +02:00
Nicolas Lœuillet d09fe4d233
Added test for deduplication 2017-05-05 14:33:36 +02:00
Thomas Citharel e2f3800ccb Add Clean Duplicates Command 2017-05-01 13:04:31 +02:00
Nicolas Lœuillet 13a592a128
Renamed methods 2017-03-31 17:03:08 +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
Kevin Decherf eac09b48b0 Search by term: extend to entries url
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-02-16 21:47:52 +01:00
Jan Losinski 32755d5091 Order tags by slug
This adds an orderBy clause to findAllTags(). This makes the list of
tags more useful, as the tags appear in alphanumerical order instead of
somehow random.

Signed-off-by: Jan Losinski <losinski@wh2.tu-dresden.de>
2017-01-17 19:22:20 +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 45c159b798
Removed user join in query builder 2016-12-12 22:51:29 +01:00
Nicolas Lœuillet 32f455c131 Added tests 2016-11-19 20:05:16 +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 1e7b04d4ea
Use created_at as default sort
With index (following https://github.com/wallabag/wallabag/pull/2534)
2016-11-04 07:56:04 +01: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 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 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 c3f8b428dd
Fix parameters in API _links
We forgot to pass them to the factory
2016-10-02 15:41:08 +02:00
Jeremy Benoist 19ca0b2f35
Avoid duplicate url with accents 2016-10-01 18:00:11 +02:00
Jeremy Benoist 289875836a
Fix tag count for PostgreSQL 2016-09-25 12:23:44 +02:00
Jeremy Benoist faa86e06ba
Fix tags count in menu
Move enable cache for Tag in the Entity because function `find*` should return result and not a Query
2016-09-25 12:03:49 +02:00
Nicolas Lœuillet a1d22ea7d0
Remove useless variable 2016-09-05 10:23:40 +02:00
Nicolas Lœuillet 429d86f388
Added tags counter in sidebar (material theme) 2016-09-04 20:53:28 +02:00
Jeremy Benoist 8f8654913c Merge pull request #2002 from wallabag/feature-display-itemsNumber
Feature display items number
2016-09-03 16:13:08 +02:00
Nicolas Lœuillet b3f4a11a81
Store cache lifetime in config 2016-09-03 14:02:50 +02:00
Nicolas Lœuillet 0b0233b1ec
Enable cache for queries 2016-09-01 20:20:12 +02:00
Nicolas Lœuillet b6520f0b15
Add untagged entries
Fix #1631
2016-08-28 14:44:00 +02:00
Thomas Citharel 9bf83f1fb8
CS 2016-08-23 07:26:58 +02:00
Thomas Citharel 4da01f492b
Delete tag or tags by label
Tests not included
2016-08-23 07:26:58 +02:00
Thomas Citharel 8cb869ea95
add some missing phpdoc parameters 2016-07-24 11:47:03 +02:00
Thomas Citharel 4f0558a0d4 fix merge issue 2016-06-29 20:52:37 +02:00
Thomas Citharel 28803f106b Add filter for tags on API 2016-06-29 09:55:57 +02:00
Thomas Citharel e5fb89e5d3 Add since parameter 2016-06-25 21:05:50 +02:00
Nicolas Lœuillet e9023a16eb Remove useless method 2016-05-03 09:39:34 +02:00
Nicolas Lœuillet 2a007fe43d
Fix tags listing
Fix #1994
* Remove unused method in tag repository
2016-05-02 21:32:47 +02:00
Jeremy Benoist 4094ea4771 Convert array + phpDoc
Thanks for https://github.com/thomasbachem/php-short-array-syntax-converter
2016-04-12 12:25:29 +02:00
Thomas Citharel e686a76d34 improve test and change method name. Also, display number of entries for each tag 2016-02-10 18:40:15 +01:00
Thomas Citharel 567421af50 remove tag from entry #1377 2016-02-10 17:41:28 +01:00
Jeremy Benoist e678c4752a Use translator interface instead of final class
Symfony use a different class when in dev mode and prod mode.

Prod loads `Symfony\Bundle\FrameworkBundle\Translation\Translator`.
Dev loads `Symfony\Component\Translation\DataCollectorTranslator` to gather information for the debug bar.

Fix #1585
2016-01-17 12:56:04 +01:00
Jeremy Benoist 7883367246 Fix findOneByUrl side effect in tests
Fix #1566
2016-01-15 15:28:32 +01:00
Nicolas Lœuillet 5c072d2b57 Quickstart for beginners 2016-01-15 15:01:30 +01:00
Jeremy Benoist b4b592a0c0 Fix the way to check for an existing entry
Instead of requiring more than 1 entry (> 1) we have to check for at least one entry (> 0)
2016-01-02 23:27:41 +01:00
Jeremy Benoist 5a4bbcc9a7 Change the way to check for an existing entry
The repository method return the entry found or false if nothing exists.
2016-01-02 23:27:41 +01:00
Nicolas Lœuillet 303768dfe9 - remove importers configuration
- add check on userId for findOneByURL for entries
2016-01-02 23:27:41 +01:00
Jeremy Benoist 6be9750155 Removed comment
And move the SQL query inside the php doc
2015-12-29 21:59:34 +01:00
Jeremy Benoist 4059a061c0 Fix the way to remove a tag from all user entries 2015-12-29 15:43:32 +01:00
Jeremy Benoist fc73222723 Remove user reference in tag
Fix #1543
2015-12-29 14:50:52 +01:00
Kévin Gomez 9cbb404b4a Add missing tagging rule repository 2015-11-11 16:23:49 +01:00
Nicolas Lœuillet 1210dae105 remove old implementation for login/register/recover 2015-10-03 13:31:48 +02:00
Nicolas Lœuillet cfb28c9da0 french translation 2015-10-01 09:26:52 +02:00
Jeremy Benoist 02d17813a1 Fix tests for all 2015-09-28 20:26:37 +02:00
Jeremy Benoist 159986c4fb Fix Postgres tests 2015-09-28 19:35:55 +02:00
Jeremy Benoist d4ebe5c5dc Entries filter on language
+ updated deps
2015-09-23 07:55:55 +02:00
Jeremy Benoist ec00964de2 Merge pull request #1372 from wallabag/v2-assign-tags
assign tags to an entry
2015-08-22 12:56:42 +02:00
Nicolas Lœuillet 7244d6cb61 assign tags to an entry 2015-08-22 12:40:48 +02:00
Nicolas Lœuillet 2b7a488917 filters: adapt queryBuilder for 'all' view 2015-08-21 07:38:18 +02:00
Jeremy Benoist 0ab7404f93 Refactorize the way to retrieve entries
One place to retrieve entries in Entry & Rss controller.
More simple and easy to maintain.
2015-08-20 20:39:22 +02:00
Jeremy Benoist 8ce32af612 CS
We shouldn't forget to run `php-cs-fixer` time to time
2015-08-20 07:53:55 +02:00
Nicolas Lœuillet 2686457448 store estimated reading time / filters on reading time 2015-08-12 09:01:29 +02:00
Nicolas Lœuillet 3f3fbef11f Add tags list display 2015-08-07 18:17:23 +02:00
Francois Gravelaine 9fb6ac830f Adds pagerfanta paginator everywhere, modifies article routing. Change API for is_starred and is_archived 2015-07-28 23:23:49 +02:00
Jeremy Benoist 4346a86068 CS 2015-05-30 13:59:33 +02:00
Jeremy 2385f891e5 Sort by id is faster
Since it's the primary key
2015-03-31 22:47:43 +02:00
Jeremy 0c83fd5994 Add rss for entries
will fix #1000
2015-03-31 22:47:43 +02:00
William Durand bcf53ab75b Return pager into EntryRepository (for entries only) 2015-03-06 21:11:01 +01:00
Nicolas Lœuillet 0ca374e6a1 replace Response with JsonResponse 2015-03-06 21:09:15 +01:00
Nicolas Lœuillet d8f9f37ab2 remove debug lines 2015-03-06 21:09:15 +01:00
Nicolas Lœuillet 092ca70725 add relation between user and tags, tests are broken 2015-03-06 21:09:15 +01:00
Nicolas Lœuillet a36737f485 POST entries/tags with test 2015-03-06 20:50:31 +01:00