public ZonePageViewModel(INavigationService navigationService,
                          IApiService apiServices) : base(navigationService)
 {
     _navigationService = navigationService;
     Title        = "Zona";
     _apiServices = apiServices;
     _user        = JsonConvert.DeserializeObject <UserResponse>(Settings.User);
     _instance    = this;
 }
Ejemplo n.º 2
0
        private async void LikeZone()
        {
            var rcts = JsonConvert.DeserializeObject <List <Reactions> >(Settings.Reactions);
            var user = JsonConvert.DeserializeObject <UserResponse>(Settings.User);

            var zoneid = JsonConvert.DeserializeObject <int>(Settings.ZoneId);


            var comment = this;



            var rct = rcts == null ? null : rcts.FirstOrDefault(r => r.CommentId == comment.Id &&
                                                                r.ZoneId == zoneid &&
                                                                r.UserId == user.Id);

            if (rct != null)
            {
                rcts.Remove(rct);

                if (comment.Like > 0)
                {
                    comment.Like--;
                    await ActCmm(zoneid, 0, comment.Id, -1);
                }
            }
            else
            {
                rct = new Reactions
                {
                    Id        = (rcts == null || rcts.Count == 0) ? 1 : rcts.Last().Id + 1,
                    CommentId = comment.Id,
                    ZoneId    = zoneid,
                    Tipo      = 2,
                    UserId    = user.Id
                };
                comment.Like++;
                await ActCmm(zoneid, 0, comment.Id, 1);

                if (rcts == null)
                {
                    rcts = new List <Reactions>();
                }

                rcts.Add(rct);
            }


            Settings.Reactions = JsonConvert.SerializeObject(rcts);



            await PubsPageViewModel.GetInstance().UpdateContentAsync();

            var Ps     = JsonConvert.DeserializeObject <PublicationsResponse>(Settings.Pubs);
            var parkId = JsonConvert.DeserializeObject <int>(Settings.ParkId);
            var zoneId = JsonConvert.DeserializeObject <int>(Settings.ZoneId);

            var park = Ps.Parks.ToList().Find(p => p.Id == parkId);
            var zone = park.Zones.ToList().Find(z => z.Id == zoneId);

            ZonePageViewModel.GetInstance().Zone = zone;

            ZonePageViewModel.GetInstance().LoadComments();
        }