aboutsummaryrefslogtreecommitdiff
path: root/Backend/Api
diff options
context:
space:
mode:
authorJelena Petrovic <jelenapetrovic.7119@gmail.com>2022-12-07 22:11:10 +0100
committerJelena Petrovic <jelenapetrovic.7119@gmail.com>2022-12-07 22:11:10 +0100
commitc49b777cf17a05713b3c42a3bf0b7cca59d026a4 (patch)
treea0d69a692cd1a52ddbc8a034992270cbd2a94d1e /Backend/Api
parenta519aa027f8fce9c5bc76aa215e56bb3d8ec3880 (diff)
parent7a455a613fe4bb9d8cd935cc6f670736485d37e5 (diff)
Merge branch 'develop' of http://gitlab.pmf.kg.ac.rs/BrzoDoLokacije2022/odyssey/brzodolokacije into develop
Diffstat (limited to 'Backend/Api')
-rw-r--r--Backend/Api/Api/Models/User.cs4
-rw-r--r--Backend/Api/Api/Services/PostService.cs6
-rw-r--r--Backend/Api/Api/Services/UserService.cs10
3 files changed, 16 insertions, 4 deletions
diff --git a/Backend/Api/Api/Models/User.cs b/Backend/Api/Api/Models/User.cs
index cf16dbe..52d0f24 100644
--- a/Backend/Api/Api/Models/User.cs
+++ b/Backend/Api/Api/Models/User.cs
@@ -21,6 +21,7 @@ namespace Api.Models
public List<string> following { get; set; }
public int followersCount { get; set; }
public int followingCount { get; set; }
+ public List<string>? favourites { get; set; }
}
public class Login
@@ -68,7 +69,8 @@ namespace Api.Models
public List<String> following { get; set; }
public int followersCount { get; set; }
- public int followingCount { get; set; }
+ public int followingCount { get; set; }
+ public List<string>? favourites { get; set; }
}
diff --git a/Backend/Api/Api/Services/PostService.cs b/Backend/Api/Api/Services/PostService.cs
index 6d28206..cb59330 100644
--- a/Backend/Api/Api/Services/PostService.cs
+++ b/Backend/Api/Api/Services/PostService.cs
@@ -557,22 +557,28 @@ namespace Api.Services
{
string userId = _httpContext.HttpContext.User.FindFirstValue("id");
var result = false;
+ var user = await _users.Find(x => x._id == userId).FirstOrDefaultAsync();
Post post = await _posts.Find(x => x._id == postId).FirstOrDefaultAsync();
if (userId == null || post==null)
return result;
if (post.favourites == null)
post.favourites = new List<string>();
+ if(user.favourites==null)
+ user.favourites= new List<string>();
if (post.favourites.Contains(userId))
{
post.favourites.Remove(userId);
+ user.favourites.Remove(post._id);
result = false;
}
else
{
post.favourites.Add(userId);
+ user.favourites.Add(post._id);
result = true;
}
+ await _users.ReplaceOneAsync(x => x._id == user._id, user);
await _posts.ReplaceOneAsync(x => x._id == postId, post);
return result;
diff --git a/Backend/Api/Api/Services/UserService.cs b/Backend/Api/Api/Services/UserService.cs
index 781afa8..2b3f0b8 100644
--- a/Backend/Api/Api/Services/UserService.cs
+++ b/Backend/Api/Api/Services/UserService.cs
@@ -17,9 +17,7 @@ namespace Api.Services
private readonly IMongoCollection<Post> _posts;
private readonly IJwtService _jwtService;
private IConfiguration _configuration;
- private readonly IFileService _fileService;
-
- private readonly IMongoCollection<UserSend> _usersSend;
+ private readonly IFileService _fileService;
public UserService(IDatabaseConnection settings, IMongoClient mongoClient, IJwtService jwtService, IHttpContextAccessor httpContextAccessor, IConfiguration configuration, IFileService fileService)
{
var database = mongoClient.GetDatabase(settings.DatabaseName);
@@ -364,6 +362,7 @@ namespace Api.Services
tosend.followingCount = user.followingCount;
tosend.followers = user.followers;
tosend.following = user.following;
+ tosend.favourites = user.favourites;
var userposts = await _posts.Find(x => x.ownerId == user._id).ToListAsync();
tosend.postcount = userposts.Count();
return tosend;
@@ -384,6 +383,7 @@ namespace Api.Services
tosend.followingCount = user.followingCount;
tosend.followers = user.followers;
tosend.following = user.following;
+ tosend.favourites = user.favourites;
var userposts = await _posts.Find(x => x.ownerId == user._id).ToListAsync();
tosend.postcount = userposts.Count();
return tosend;
@@ -476,6 +476,7 @@ namespace Api.Services
follower.followers = utemp.followers;
follower.followersCount = utemp.followersCount;
follower.followingCount = utemp.followingCount;
+ follower.favourites = utemp.favourites;
follower._id = utemp._id;
@@ -515,6 +516,7 @@ namespace Api.Services
follower._id = utemp._id;
follower.followersCount = utemp.followersCount;
follower.followingCount = utemp.followingCount;
+ follower.favourites = utemp.favourites;
following.Add((UserSend)follower);
}
@@ -558,6 +560,7 @@ namespace Api.Services
following._id = utemp._id;
following.followersCount = utemp.followersCount;
following.followingCount = utemp.followingCount;
+ following.favourites=utemp.favourites;
myFollowings.Add((UserSend)following);
}
@@ -672,6 +675,7 @@ namespace Api.Services
follower.followersCount = utemp.followersCount;
follower.followingCount = utemp.followingCount;
follower._id = utemp._id;
+ follower.favourites = utemp.favourites;
myfollowers.Add((UserSend)follower);
}
return myfollowers;