/*
         *  REQUIERE: el correo del usuario autenticado.
         *  EFECTUA: obtiene los enfasis de un usuario en particular.
         *  MODIFICA: n/a
         */
        private List <Enfasis> obtener_enfasis_usuario()
        {
            var    identidad_autenticada = (ClaimsPrincipal)Thread.CurrentPrincipal;
            string correo_autenticado    = identidad_autenticada.Claims.Where(c => c.Type == ClaimTypes.Email).Select(c => c.Value).SingleOrDefault();

            if (correo_autenticado != null)
            {
                List <Enfasis> lista = new List <Enfasis>();

                // Procedimiento almacenado.
                // Guardo las tuplas resultantes del llamado al procedimiento almacenado, orden: Sigla de carrera, numero de enfasis, permiso
                var     tuplas_resultantes = db.ObtenerPerfilesUsuario(correo_autenticado);
                Enfasis enfasis            = null;

                // Iterar por cada tupla
                foreach (var tupla in tuplas_resultantes)
                {
                    enfasis = new Enfasis();
                    enfasis.SiglaCarrera = tupla.SiglaCarrera;
                    enfasis.Numero       = tupla.NumeroEnfasis;
                    lista.Add(enfasis);
                }
                return(lista);
            }
            else
            {
                return(null);
            }
        }
Ejemplo n.º 2
0
        public JsonResult CargarDatosDefault()
        {
            string  profile  = CurrentUser.getUserProfile();
            Carrera carrera  = db.Carrera.Find(CurrentUser.getUserMajorId());
            Enfasis enfasis  = db.Enfasis.Find(CurrentUser.getUserMajorId(), CurrentUser.getUserEmphasisId());
            string  major    = carrera.Codigo + "," + carrera.Nombre;
            string  emphasis = enfasis.Codigo + "," + enfasis.Nombre;

            return(Json(new { defaultProfile = profile, defaultMajor = major, defaultEmphasis = emphasis }, JsonRequestBehavior.AllowGet));
        }