1
0
mirror of https://github.com/chylex/Nextcloud-News.git synced 2024-11-24 13:42:47 +01:00
Commit Graph

442 Commits

Author SHA1 Message Date
Marco Nassabain
7306370ece Item: add sharer display name in findEntities
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
8674d558fc Update Item model: add sharedByDisplayName
- added field + setters + getters
- include field in serialized Item

Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
0fdd88df55 🧹 ShareService: rename $url to $urlGenerator
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
7f3c63a2a4 🎨 ShareService: update dummy feed URL
- add IURLGenerator DI
- update url to "http://serverurl/news/sharedwithme"
- updated tests: added DI + adapted expected url

Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
920ae54a2c 🌐 ShareService: Localize dummy feed title
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
b0c42e4cd7 ♻️ Item: Remove isShared
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
2cba1e4146 🧹 Cleanup code, remove spaces, rename variables
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
4612ed9bf0 🎨 Share migration: remove shared_by default value
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
e5d439ee7e 🚑 Fix newsItem insert error
- add Item::__clone method resetting updated fields
- set item id to null in ShareService

Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
293300166d 🚑 Fix exception handling in ShareService
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
1a582f2a7a 🚑 Fix ItemController::share
- call correct ShareService function
- correct ShareService className annotation

Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
d92d77c066 🚑 Fix errors in ShareService
- change argument $id to $itemId
- import Exceptions

Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
409c835433 🩹 Patch ItemController + test to use ShareService
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
dd818c6203 🚑 Fix circular inclusion: create ShareService
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
8fd3975907 🎨 Update share migration
- remove shared_with column
- make shared_by nullable

Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
e96d7c9b1e 🎨 Item.php: make shared_by nullable
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
6a6f89ff94 🎨 Item.php: Remove shared_with
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
26569fd4a2 Add FeedServiceV2 DI into ItemServiceV2
- used for finding dummy share feed

Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
9bd27da9ba 🔥 Remove old share item logic & functions
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
d2e831fbaa 🎨 Update item share: add items to dummy feed
- create/find a 'shared with me' dummy feed
- clone item, initialize fields, add to dummy feed

Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
WENDLING NICOLAS
f6014567f3 🗑 '!=' is discouraged, replaced by '!=='
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
WENDLING NICOLAS
a9863ec5f7 🗑 '!=' is discouraged, replaced by '!=='
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
af02560363 🎨 ItemMapperV2: add new offset code (findShared)
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
WENDLING NICOLAS
604f64c30c 🚨 Fix linter in those classes:
- ItemController
- ItemMapperV2
- ItemServicev2

Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
75e81d5e0b 🥅 ItemService: catch NotFoundException + cleanup
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
ceefee0d3e 🗃 Change share migration version
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
88fc165f49 🔥 Remove old ItemMapper & ItemService
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
df8680b14a 🩹 Remove traces of feed_id being nullable
- feed_id is not nullable so we remove default values

Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
08982fc540 Add findAllSharedAfter
- adapted Controller, Service and Mapper (newItems)

Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
0f6ec7c99c Implementer shared getter + add count in request
- ItemServiceV2: added sharedWithUser - returns unread shared items
- ItemController & FeedController - returning shared count

Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
7e1a0b47cf ItemController (index): add case for shared items
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
d63e999d93 ItemServiceV2: add findAllSharedWithUserWithFilters
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
1f0924fb57 ItemMapperV2: exclude shared items in functions
updated the following functions to exclude shared_items:
- findAllInFeedAfter
- findAllInFolderAfter
- findAllFeed
- findAllFolder

Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
26ae92bc7b ItemMapperV2: include shared in functions
updated the following functions to include shared items:
- findFromUser
- findForUserByGuidHash
- readAll
- findAllAfter
- findAllItems

Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
83bdbc08a0 ItemMapperV2: include shared in functions
updated the following functions to include shared items:
- findAllFromUser
- newest

Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
c3cc70b15e ItemMapperV2: added findAllSharedWithUser funct
- return all items shared with a given user

Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
907e764749 🚧 ItemService, Controller: added basic sharing
- TODO: check if relation already exists

Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
237363e087 💡 Added comments to ItemMapper share fncts
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
54aa8b5270 🩹 Return starredCount in newItems response params
- returning sharedCount everywhere where starredCount is returned

Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
ec5ae1a90a 🩹 ItemMapper->deleteUser: include shared items
- deletes items shared with a user

Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
15dedf0ceb 🩹 Patch getNewestItemId: include shared articles
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
11bd056bdf 🩹 Patch readAll: concerns items shared with user
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
c640740444 🐛 Fix readAll: cannot read items we shared
- A shared item is still in our feed, but it's not ours to read

Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
bf92ace3e8 🐛 Added sharedCount to feedController index resp.
- After reloading news app, the shared menu count wouldn't update
- The number would only update on click (call ItemController index)
- Adding it here fixes the issue

Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
b27226d4ae 🚑 Fix bug - other user feeds show for shared item
- findAllFeeds doesn't return feeds of shared articles
- Disable feed cache handling for shared items

Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
e78153c051 Sharing: update ownership in sql (sharedwith)
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Aurélien
5f69c256e3 Add function for avoid duplicate item (share)
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
f3c4d744c0 🐛 Share Item: feed_id not nullable, copy feed_id
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Jimmy Huynh
98d72bac54 (*) fix: item Model
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Jimmy Huynh
4294842a00 (*) fix: item Model
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Jimmy Huynh
b402fddef9 (+) Adding sharing_user names to EVERY articles + pre-condition if sharedArticle: no title feed (e.g.: from wikiRSS...)
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
27ca98136a ItemController: return sharedCount in index req
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
785aaf6929 🐛 sharedCount: fix sql statement bug 1 => 1
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
WENDLING NICOLAS
edee520fc8 🎨 Fix function name to sharedCount
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
WENDLING NICOLAS
ca2b8c6566 Add count for unread items
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
5fc486a84f 🔥 shareItem: set unread = true for shared article
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
f2ef07c661 🔥 findAllShared: add table alias in sql statement
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Aurélien
f908df15b8 add function findAllShared in return
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
WENDLING NICOLAS
3936362343 Get all shared items with an user
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Aurélien
6ebe676911 add root for access shared items
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
08171bb42d NewsItem: add share routes + controller func
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
527eef0727 NewsItem: add share functions (mapper + service)
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Marco Nassabain
5b09e74f40 🗃 NewsItem: added share fields, feedId not null
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-04-08 22:31:21 +02:00
Paul Tirk
f18adeba26 fix invalid 'empty' checks
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2021-04-08 10:23:11 +02:00
Paul Tirk
f358c8213b add missing type hints
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2021-04-08 10:23:11 +02:00
Paul Tirk
8b3c1341e8 return error if new folder name is missing on update
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2021-04-08 10:23:11 +02:00
Paul Tirk
822423af38 use last modified timestamp data instead of removed 'updatedAt' field
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2021-04-08 10:23:11 +02:00
Paul Tirk
b45426937e return error if no folder name is provided
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2021-04-08 10:23:11 +02:00
Paul Tirk
d4ace06ff5 add json error response without an exception
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2021-04-08 10:23:11 +02:00
Paul Tirk
05b7ed7994 remove unused service exceptions & allow equally named folders
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2021-04-08 10:23:11 +02:00
Paul Tirk
8035142973 fix wrong function definition & remove leftover copyright headers
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2021-04-08 10:23:11 +02:00
Paul Tirk
0d7d3cdfb4 move v2 api responses into existing php traits
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2021-04-08 10:23:11 +02:00
Paul Tirk
dff855fba5 change method names to follow nextcloud convention
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2021-04-08 10:23:11 +02:00
Paul Tirk
323f215e3a separate serialization functions
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2021-04-08 10:23:11 +02:00
Paul Tirk
f22eddb91d remove unused 'findByName' method of folder mapper/service
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2021-04-08 10:23:11 +02:00
Paul Tirk
eb849a9be5 do not return existing folders when an API request error occurs
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2021-04-08 10:23:11 +02:00
Paul Tirk
566a21b4a8 add possibility to serialize a reduced version of an entity
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2021-04-08 10:23:11 +02:00
Paul Tirk
06a45387ef lint & add missing copyright/author information
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2021-04-08 10:23:11 +02:00
Paul Tirk
5e4c927017 add folder api v2
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2021-04-08 10:23:11 +02:00
Paul Tirk
2a2d7194ee add api v2 response trait
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2021-04-08 10:23:11 +02:00
Paul Tirk
cc9c64d69b add api version 2 & folder api routes
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2021-04-08 10:23:11 +02:00
Paul Tirk
6e067dfd43 add serialization methods for v2 API
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2021-04-08 10:23:11 +02:00
Chris Danser
6e845124df
Null check category label before trying to decode (#1282)
* Null check category label before trying to decode

Signed-off-by: skiingwiz <skiingwiz@gmail.com>
2021-04-08 08:10:41 +02:00
Sean Molenaar
90702dd297 DB: Use boolean parameter for unread/starred
Issue GH-1278

Signed-off-by: Sean Molenaar <sean@seanmolenaar.eu>
2021-04-06 12:43:24 +02:00
Sean Molenaar
951f3eb7ee DB: Allow negative limits
Signed-off-by: Sean Molenaar <sean@seanmolenaar.eu>
2021-04-05 19:18:19 +02:00
skiingwiz
04519388ce Allow directly adding a feed without going through the discovery process
Signed-off-by: skiingwiz <skiingwiz@gmail.com>
2021-04-02 11:15:17 +02:00
Sean Molenaar
78dce7ffe1 DB: Updates should use set()
Issue GH-1211

Signed-off-by: Sean Molenaar <sean@seanmolenaar.eu>
2021-03-31 22:39:00 +02:00
Sean Molenaar
7a2b3ccfa8 chore: Improve test coverage
Signed-off-by: Sean Molenaar <sean@seanmolenaar.eu>
2021-03-30 12:58:47 +02:00
Sean Molenaar
da61c93afe
Search: Add folder search (#1215)
* Search: Add folder search

Signed-off-by: Sean Molenaar <sean@seanmolenaar.eu>
2021-03-29 09:25:06 +02:00
Sean Molenaar
2baa7a2b91 Make PHPstan stricter
Signed-off-by: Sean Molenaar <sean@seanmolenaar.eu>
2021-03-25 18:47:38 +01:00
Sean Molenaar
baf1ca8ec9 DB: Don't show deleted feed items
Signed-off-by: Sean Molenaar <sean@seanmolenaar.eu>
2021-03-23 21:11:25 +01:00
Marco Nassabain
79c9df8dc1 🎨 Item: implode categories for search index
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-03-17 08:58:42 +01:00
Marco Nassabain
7e0aab358c 🎨 Item: store categories as json & add helper fns
+ added setter/getters that work with arrays to simplify use case

Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-03-17 08:58:42 +01:00
Marco Nassabain
29b55ae030 Item: add categories into search index
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-03-17 08:58:42 +01:00
Jimmy Huynh
4e7a1b159a Add 'catagories' to jsonSerialize()
Signed-off-by: Jimmy Huynh <jimmy.huynh@etu.unistra.fr>
2021-03-17 08:58:42 +01:00
Jimmy Huynh
3dfbf64a6b ♻️ Renaming 'tags' into 'categories'
Signed-off-by: Jimmy Huynh <jimmy.huynh@etu.unistra.fr>
2021-03-17 08:58:42 +01:00
Marco Nassabain
ef0742e868 🐛 Fix Item model: set default value for setTags
Signed-off-by: Marco Nassabain <marco.nassabain@hotmail.com>
2021-03-17 08:58:42 +01:00
Jimmy Huynh
fd13be0f7a Update FeedFetcher: import 'tags' to 'item'
Signed-off-by: Jimmy Huynh <jimmy.huynh@etu.unistra.fr>
2021-03-17 08:58:42 +01:00
Jimmy Huynh
f217384716 Update 'Item' model: add 'tags' field
Signed-off-by: Jimmy Huynh <jimmy.huynh@etu.unistra.fr>
2021-03-17 08:58:42 +01:00
Jimmy Huynh
0da1c16145 🗃 Add migration: 'tags' column (longtext)
Signed-off-by: Jimmy Huynh <jimmy.huynh@etu.unistra.fr>
2021-03-17 08:58:42 +01:00