public IEnumerable <MenuVistaModelo> convierteCursoAMenuVistaModelo()
        {
            cursoModelo[] cursos = usuario.cursos;

            cursoModelo cursoM = new cursoModelo {
                idCurso = -1, nombre = "Crear un nuevo curso"
            };

            List <cursoModelo> lCurso = new List <cursoModelo> {
                cursoM
            };

            if (cursos != null)
            {
                foreach (cursoModelo curso in cursos)
                {
                    lCurso.Add(curso);
                }
            }

            return(lCurso.Select(l => new MenuVistaModelo
            {
                anio = l.anio,
                idCurso = l.idCurso,
                nombre = l.nombre,
                periodo = l.periodo
            }));
        }
Пример #2
0
        public CursoVistaModelo(cursoModelo curso)
        {
            this.idCurso = curso.idCurso;

            instancia = this;
            //Si el curso id es igual a -1 entonces se debe registrar un nuevo curso
            if (idCurso == -1)
            {
                this.RegistroCurso = true;
            }
            else
            {
                this.EsTema = true;
                this.cargaTemas();
            }
        }
Пример #3
0
        private async void RegistraTema()
        {
            if (string.IsNullOrEmpty(Nombre))
            {
                Util.mensaje(1, "El nombre esta vacío");
                return;
            }

            this.Proceso = true;

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

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

            var client = MainVistaModelo.getInstancia().getWS();

            client.Timeout = 10000;

            cursoModelo cursoN = new cursoModelo {
                idCurso = this.idCurso
            };

            temaModelo tema = new temaModelo {
                nombre = this.Nombre, curso = cursoN
            };

            bool res = false;

            await Task.Run(() => res = client.agregaTema(tema));

            if (!res)
            {
                Util.mensaje(1, "El tema no pudo ser creado");
                this.Proceso = false;
                return;
            }

            CursoVistaModelo.getInstancia().cargaTemas();
            this.Proceso = false;
            Util.pantallaAnterior();
        }
Пример #4
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;
        }
Пример #5
0
 public VMenuDetail(cursoModelo curso)
 {
     InitializeComponent();
 }
Пример #6
0
 public void push(cursoModelo curso)
 {
     MainVistaModelo.getInstancia().Curso = new CursoVistaModelo(curso);
     Detail      = new NavigationPage(new VCurso(curso.nombre + "   ~   " + curso.periodo));
     IsPresented = false;
 }