Ejemplo n.º 1
0
        //Comando que se ejecuta al pulsar el boton

        /*public ICommand getMensajesTablon
         * {
         *  get;
         *  private set;
         * }
         *
         * public ICommand postMensajesTablon
         * {
         *  get;
         *  private set;
         * }*/
        /*public ICommand GetMensajesTablon
         * {
         *  get
         *  {
         *      if (getMensajesTablon == null)
         *      {
         *          getMensajesTablon = new ActionCommand(() =>
         *          {
         *              servicioMensajes.getMensajesTablon();
         *          });
         *      }
         *
         *      return getMensajesTablon;
         *  }
         * }*/

        //Constructor.
        public MensajesTablonViewModel()
        {
            mensajes = new ObservableCollection <MensajeTablon>();
            servicioMensajes.getMensajesTablonCompletado += (s, a) =>
            {
                //mensajes = new ObservableCollection<MensajeTablon>(a.mensajes);
                //if (a.mensajes.Count > 0)
                //    servicioMensajes.updateMensajesTablon(a.mensajes[a.mensajes.Count - 1].identificador, a.mensajes[0].identificador, a.mensajes[0].identificadorTablon);
                //this.OnPropertyChanged("Mensajes");


                insertarNuevosMensajes(a.mensajes);
                //servicioMensajes.getMensajesTablonFromServer(AplicationSettings.getIdTablonMensajes());
                if (mensajes.Count > 0)
                {
                    servicioMensajes.updateMensajesTablon(mensajes[mensajes.Count - 1].identificador, mensajes[0].identificador, mensajes[0].identificadorTablon);
                }
                this.OnPropertyChanged("Mensajes");
            };

            servicioMensajes.getMensajesTablonServerCompletado += (s, a) =>
            {
                //if (mensajes.Count > 0)
                //servicioMensajes.updateMensajesTablon(mensajes[mensajes.Count - 1].identificador, mensajes[0].identificador, mensajes[0].identificadorTablon);
                insertarNuevosMensajes(a.mensajes);
                this.OnPropertyChanged("Mensajes");
            };

            servicioMensajes.updateMensajesTablonCompletado += (s, a) =>
            {
                servicioMensajes.getMensajesTablonFromServer(AplicationSettings.getIdTablonMensajes());
                //Hacer lo que sea cuando toque
                //En caso de poner el numero de likes a los corazones hacerlo aqui.
                foreach (var m in a.mensajes)
                {
                    if (m.deleted)
                    {
                        for (int i = 0; i < mensajes.Count; i++)
                        {
                            if (m.id == mensajes[i].identificador)
                            {
                                mensajes.RemoveAt(i);
                            }
                        }
                    }
                }
            };

            visibilidadMensaje = Visibility.Collapsed;
            servicioMensajes.getMensajesTablon();
        }