public async Task AddCollectionToUser(int colId, UserViewModel uvm)
        {
            var col = await _ctx.Collections.FirstOrDefaultAsync(x => x.Id == colId);

            if (col == null)
            {
                return;
            }

            var usr = await _ctx.Users.FirstOrDefaultAsync(x => x.Id == uvm.Id);

            if (usr == null)
            {
                return;
            }

            //exista deja maparea asta?
            var curMap = await _ctx.UserCollectionMappings.FirstOrDefaultAsync(x => x.CollectionId == col.Id && x.UserId == usr.Id);

            if (curMap != null)
            {
                return;
            }

            var map = new UserCollectionMapping()
            {
                CollectionId = col.Id,
                UserId       = usr.Id
            };

            _ctx.UserCollectionMappings.Add(map);
            await _ctx.SaveChangesAsync();
        }
Example #2
0
        public ActionResult CollectionsCount(string userId)
        {
            string          authHeader = this.HttpContext.Request.Headers["Authorization"];
            TokenModel      tokenModel = new TokenModel();
            ClaimsPrincipal auth       = tokenModel.GetPrincipal(authHeader);

            if (auth.Identity.IsAuthenticated)
            {
                AspNetUsers users = new AspNetUsers();
                new ClickTracker("CollectionsCount", true, false, "userId " + users.getUserId(userId), auth.Identity.Name);
                UserCollectionMapping mapping = new UserCollectionMapping();
                if (mapping.CollectionsCounter(userId) > 0)
                {
                    return(Ok(true));
                }
                else
                {
                    return(Ok(false));
                }
            }
            return(Ok(""));
        }