public JsonResult Placeinfo(int id)
        {
            ResultPlaceList result       = null;
            int             this_user_id = -1;

            try
            {
                using (var _context = new AppDBContext())
                {
                    string get_email          = null;
                    var    identity           = HttpContext.User.Identity as ClaimsIdentity;
                    IEnumerable <Claim> claim = identity.Claims;
                    var usernameClaim         = claim
                                                .Where(x => x.Type == ClaimTypes.Name)
                                                .FirstOrDefault();
                    if (usernameClaim != null)
                    {
                        get_email = usernameClaim.Value;
                    }
                    Users users = _context.Users.Where(users => (users.email == get_email))
                                  .FirstOrDefault();
                    if (users != null)
                    {
                        this_user_id = users.id_user;
                    }
                }
            }
            catch
            {
            }

            using (var _context = new AppDBContext())
            {
                try
                {
                    var place = _context.Place.Where(place1 => (place1.id_place == id)).First();

                    result = PlaceToResult(place, this_user_id, true);
                }
                catch
                {
                    result = null;
                }
            }

            return(new JsonResult(result));
        }
        private ResultPlaceList PlaceToResult(Place place1, int user_id = -1, bool fulladdress = false)
        {
            ResultPlaceList result1 = new ResultPlaceList();

            result1.Id_place    = place1.id_place;
            result1.Title       = place1.title;
            result1.Description = place1.description;
            if (result1.Description != null)
            {
                result1.Description = result1.Description;
            }
            result1.Image = place1.image;
            if (result1.Image == null)
            {
                result1.Image = defaultImage;
            }
            result1.Multitime = place1.multi_time;

            using (var _context = new AppDBContext())
            {
                var address = _context.Place_address
                              .Where(placeAddress => (placeAddress.id_place == place1.id_place)).First();
                if (fulladdress)
                {
                    result1.Address_city = $"{address.city} {address.number} {address.street} {address.country}";
                }
                else
                {
                    result1.Address_city = address.city;
                }

                var user = _context.Users.Where(users => (users.id_user == place1.id_user)).First();
                result1.Users_username = user.username;

                var rate = _context.Place_rate.Where(placeRate => (placeRate.id_place == place1.id_place)).ToList();

                result1.Rate_likes    = 0;
                result1.Rate_dislikes = 0;
                if (user_id == place1.id_user)
                {
                    result1.Own = true;
                }
                else
                {
                    result1.Own = false;
                }
                foreach (var rate1 in rate)
                {
                    if (rate1.like)
                    {
                        result1.Rate_likes++;
                    }
                    else
                    {
                        result1.Rate_dislikes++;
                    }
                }
            }

            return(result1);
        }