Exemple #1
0
        public ConnectionPage()
        {
            InitializeComponent();
            BindingContext = viewModel = new ConnectionViewModel(this.Navigation);             // HERE
            ConfiguracionSaverRetriever.RetrieveProperties();
            string urlOrIndoorName = !Configuracion.Instancia.useRestComunicationSchema ? (Configuracion.Instancia.restBaseUrl.Contains("-") ? Configuracion.Instancia.restBaseUrl.Split('-')[1] : Configuracion.Instancia.restBaseUrl) : Configuracion.Instancia.restBaseUrl;

            this.txtURL.Text          = urlOrIndoorName;
            this.txtUsuario.Text      = Configuracion.Instancia.usuario;
            this.txtPassword.Text     = Configuracion.Instancia.contrasenia;
            this.swRest.IsToggled     = Configuracion.Instancia.useRestComunicationSchema;
            this.swRemember.IsToggled = Configuracion.Instancia.saveConfiguration;
        }
        public void setMensajes()
        {
            MessagingCenter.Subscribe <ConnectionPage>(this, "LogIn", async(obj) =>
            {
                if (!string.IsNullOrEmpty(this.RestURLBase) && !string.IsNullOrEmpty(this.Usuario) && !string.IsNullOrEmpty(this.Password))
                {
                    Configuracion.Instancia.restBaseUrl               = this.Prefix + this.RestURLBase;
                    Configuracion.Instancia.usuario                   = this.Usuario;
                    Configuracion.Instancia.contrasenia               = this.Password;
                    Configuracion.Instancia.saveConfiguration         = this.Recordar;
                    Configuracion.Instancia.useRestComunicationSchema = this.UsarComunicacionRest;

                    this.BotonHabilitado      = false;
                    List <ConfigGPIO> configs = await IndoorComunicaitionFactory.GetInstance().GetConfiguraciones();
                    if (configs != null)
                    {
                        if (this.Recordar)
                        {
                            ConfiguracionSaverRetriever.SaveProperties();
                        }
                        await _navigation.PushAsync(new NavigationPage(new MainPage(configs)));
                    }
                    else
                    {
                        ConfiguracionSaverRetriever.DeleteProperties();
                        await Application.Current.MainPage.DisplayAlert("Error", "Error al realizar login, revise los datos", "Error");
                    }
                    this.BotonHabilitado = true;
                }
                else
                {
                    await Application.Current.MainPage.DisplayAlert("Error", "Debe completar todos los datos", "Error");
                }
            });
            MessagingCenter.Subscribe <ConnectionPage>(this, "Configurar", async(obj) =>
            {
                await _navigation.PushAsync(new ConfigurationPage());
            });
        }