public async Task <ActionResult <SubscribeResponseModel> > Subscribe(SubscribeInputModel input)
        {
            if (!this.ModelState.IsValid ||
                input == null ||
                string.IsNullOrEmpty(input.UserId))
            {
                return(this.BadRequest());
            }

            ApplicationUser userToSubscribe = await this.UserManager.FindByIdAsync(input.UserId);

            if (userToSubscribe == null)
            {
                return(this.BadRequest());
            }

            var userSubcrebed = this.UserManager.GetUserId(this.User);

            if (string.Compare(userToSubscribe.Id.ToString(), userSubcrebed, true) == 0)
            {
                return(this.BadRequest());
            }

            bool result = await this.SubscribesService.ManageUserSubsctibe(userSubcrebed, userToSubscribe.Id, input.Follow);

            return(new SubscribeResponseModel {
                Result = result
            });
        }
Example #2
0
        public async Task <ActionResult <SubscribeResponseModel> > Subscribe(SubscribeInputModel input)
        {
            if (!this.ModelState.IsValid)
            {
                return(this.NoContent());
            }

            var ip = this.HttpContext.Connection.RemoteIpAddress.ToString();

            await this.subscribesService.Subscribe(input.Email, ip);

            return(new SubscribeResponseModel
            {
                TextResponse = SubscribeResponse,
            });
        }