public async void cargaCursos()
 {
     this.Proceso = true;
     this.usuario = MainVistaModelo.getInstancia().usuarioCurso;
     await Task.Run(() => {
         this.Cursos  = new ObservableCollection <MenuVistaModelo>(convierteCursoAMenuVistaModelo());
         this.Proceso = false;
     });
 }
Exemple #2
0
        private async void EliminaCurso()
        {
            bool res = await Application.Current.MainPage.DisplayAlert("¡ATENCIÓN!",
                                                                       "Esta a punto de eliminar todo el curso" + this.NombreCurso, "ACEPTAR", "CANCELAR");

            if (res)
            {
                this.Proceso = true;
                var main    = MainVistaModelo.getInstancia();
                var cliente = main.getWS();

                bool resS = false;
                try
                {
                    await Task.Run(() =>
                    {
                        try
                        {
                            resS = cliente.eliminaCurso(new cursoModelo {
                                idCurso = this.idCurso
                            });
                        }
                        catch (Exception) { }
                    });

                    if (!resS)
                    {
                        string mensaje = string.Format("No se ha podido eliminar el curso{0}Pruebe " +
                                                       "con borrar las actividades de este curso{0}", Environment.NewLine);
                        Util.mensaje(1, mensaje);
                    }
                    else
                    {
                        usuarioModelo usuarioM = null;

                        usuarioModelo usuarioN = main.usuarioCurso;

                        await Task.Run(() =>
                        {
                            usuarioM          = cliente.login(usuarioN.nickname, usuarioN.contrasena, true);
                            main.usuarioCurso = usuarioM;
                            HomeVistaModelo.getInstancia().cargaCursos();
                        });

                        Util.mensaje(0, "Curso Eliminado");

                        VMenu.getInstancia().irAlInicio();
                    }
                }
                catch (Exception)
                {
                    Util.mensaje(1, "No se ha podido eliminar el curso");
                }
            }
            this.Proceso = false;
        }
Exemple #3
0
        public async void RegistraCurso()
        {
            if (string.IsNullOrEmpty(NombreCurso))
            {
                Util.mensaje(1, "Nombre del curso vacío");
                return;
            }

            if (string.IsNullOrEmpty(Periodo))
            {
                Util.mensaje(1, "Seleccione un periodo");
                return;
            }

            this.Proceso = true;

            var conexion = await new APIServicio().verificaConexion();

            if (!conexion.IsSuccess)
            {
                this.Proceso = false;
                Util.mensaje(1, conexion.Mensaje);
                return;
            }

            cursoModelo curso = new cursoModelo
            {
                anio    = 2018,
                nombre  = NombreCurso,
                periodo = Periodo
            };

            List <cursoModelo> lCurso = new List <cursoModelo>();

            var main = MainVistaModelo.getInstancia();

            usuarioModelo usuario = main.usuarioCurso;

            lCurso = (usuario.cursos != null) ? usuario.cursos.ToList <cursoModelo>() : lCurso;

            lCurso.Add(curso);

            usuario.cursos = lCurso.ToArray();

            bool res = main.getWS().registro(usuario);

            if (!res)
            {
                Util.mensaje(1, "El curso no ha podido ser creado");
            }
            else
            {
                usuarioModelo usuarioM = null;

                await Task.Run(() =>
                {
                    usuarioM          = main.getWS().login(usuario.nickname, usuario.contrasena, true);
                    main.usuarioCurso = usuarioM;
                    HomeVistaModelo.getInstancia().cargaCursos();
                });

                Util.mensaje(0, "Curso creado");
            }
            this.Proceso     = false;
            this.Periodo     = null;
            this.NombreCurso = string.Empty;
        }
        public async void Iniciar()
        {
            if (string.IsNullOrEmpty(Nombre))
            {
                Util.mensaje(1, "Nombre vacío");
                return;
            }
            if (string.IsNullOrEmpty(Correo))
            {
                Util.mensaje(1, "Correo vacío");
                return;
            }
            if (string.IsNullOrEmpty(Nickname))
            {
                Util.mensaje(1, "Nickname vacío");
                return;
            }
            if (string.IsNullOrEmpty(Contrasena))
            {
                Util.mensaje(1, "Contrasena vacía");
                return;
            }
            if (string.IsNullOrEmpty(Contrasena1))
            {
                Util.mensaje(1, "Contraseña vacía");
                return;
            }

            if (!Contrasena1.Equals(Contrasena))
            {
                Util.mensaje(1, "Las contraseñas no coinciden");
                return;
            }

            this.Proceso = true;

            usuarioModelo usuario = new usuarioModelo();
            rolModelo     rol     = new rolModelo
            {
                idRol = (this.soyProfesor.Equals("Soy Profesor")) ? 1 : 2
            };

            usuario.nombre     = this.Nombre;
            usuario.correo     = this.Correo;
            usuario.nickname   = this.Nickname;
            usuario.contrasena = this.Contrasena;
            usuario.rol        = rol;

            try
            {
                var mainVistaM = MainVistaModelo.getInstancia();
                var cliente    = mainVistaM.getWS();

                cliente.Timeout = 6000;
                bool res = false;

                await Task.Run(() => res = cliente.registro(usuario));

                if (!res)
                {
                    Util.mensaje(1, "Nickname o correo no disponibles");
                }
                else
                {
                    usuarioModelo usuarioM = null;

                    await Task.Run(() => usuarioM = cliente.login(usuario.nickname, usuario.contrasena, true));

                    mainVistaM.usuarioCurso = usuarioM;
                    mainVistaM.Home         = new HomeVistaModelo();
                    Util.muestraPantalla(new VMenu());
                }
                this.Proceso = false;
            }
            catch
            {
                this.Proceso = false;
            }
        }
Exemple #5
0
        public async void Iniciar()
        {
            if (string.IsNullOrEmpty(this.Email))
            {
                Util.mensaje(1, "Email vacío");
                return;
            }

            if (string.IsNullOrEmpty(this.Password))
            {
                Util.mensaje(1, "Password vacío");
                return;
            }

            this.BtnActivo = false;
            this.Proceso   = true;

            bool correo = this.Email.Contains("@");

            var conexion = await this.apiServicio.verificaConexion();

            if (!conexion.IsSuccess)
            {
                this.BtnActivo = true;
                this.Proceso   = false;
                Util.mensaje(1, conexion.Mensaje);
                return;
            }

            usuarioModelo usuario = null;

            try
            {
                var client = MainVistaModelo.getInstancia().getWS();
                client.Timeout = 10000;

                await Task.Run(() => usuario = client.login(Email, Password, correo));

                usuario = client.login(Email, Password, correo);
                this.limpiaPantalla();

                if (usuario == null)
                {
                    this.BtnActivo = true;
                    this.Proceso   = false;
                    Util.mensaje(1, "Usuario o contraseña incorrectos");
                    return;
                }

                MainVistaModelo.getInstancia().usuarioCurso = usuario;
                MainVistaModelo.getInstancia().Home         = new HomeVistaModelo();

                this.BtnActivo = true;
                this.Proceso   = false;

                Util.muestraPantalla(new VMenu());
            }
            catch (Exception e)
            {
                limpiaPantalla();
                Util.mensaje(1, e.Message);
            }
        }