Example #1
0
        public IHttpActionResult DeleteJuego(int id)
        {
            var identity      = (ClaimsIdentity)User.Identity;
            var identity_mail = identity.Claims.Where(c => c.Type == ClaimTypes.Email)
                                .Select(c => c.Value).SingleOrDefault();

            DTOBaseResponse response = new DTOBaseResponse();

            try
            {
                BusinessLogic.Controllers.JuegoController controller = new BusinessLogic.Controllers.JuegoController();
                DTOJuego juego = controller.GetJuego(id);
                if (juego.User_loginnameUser == identity_mail)
                {
                    controller.DeleteJuego(id);
                    response.Success = true;
                }
                else
                {
                    response.Success = false;
                }
            }
            catch (Exception ex)
            {
                response.Success = false;
                response.Error   = ex.ToString();
            }
            return(Ok(response));
        }
Example #2
0
        public IHttpActionResult GetArrayPlayersQueJugaron(string loginname)
        {
            BusinessLogic.Controllers.JuegoController controller = new BusinessLogic.Controllers.JuegoController();
            List <DTOStatsJuego> retorno = controller.GetArrayPlayersQueJugaron(loginname);

            return(Ok(retorno));
        }
Example #3
0
        // GET: api/Juego
        public IEnumerable <DTOJuego> GetAll()
        {
            BusinessLogic.Controllers.JuegoController controller = new BusinessLogic.Controllers.JuegoController();
            List <DTOJuego> juegos = controller.GetAll();

            return(juegos);
        }
Example #4
0
        // GET: api/Juego/5
        public IHttpActionResult GetPlayersQueJugaron(string loginname)
        {
            BusinessLogic.Controllers.JuegoController controller = new BusinessLogic.Controllers.JuegoController();
            DTOStatsJuego players = controller.PlayersQueJugaron(loginname);

            return(Ok(players));
        }
Example #5
0
        public IHttpActionResult UpdateJuego(int id, DTOJuego juego)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var identity      = (ClaimsIdentity)User.Identity;
            var identity_mail = identity.Claims.Where(c => c.Type == ClaimTypes.Email)
                                .Select(c => c.Value).SingleOrDefault();

            if (juego == null)
            {
                return(BadRequest());
            }
            if ((id != juego.idJuego) || (juego.User_loginnameUser != identity_mail))
            {
                return(BadRequest());
            }

            DTOBaseResponse response = new DTOBaseResponse();

            try
            {
                BusinessLogic.Controllers.JuegoController controller = new BusinessLogic.Controllers.JuegoController();
                var juegoOriginal = controller.GetJuego(id);
                if (juego.coverJuego != "" && juego.coverJuego != juegoOriginal.coverJuego)
                {
                    string Base64Image = juego.coverJuego;
                    var    bytes       = Convert.FromBase64String(Base64Image);
                    //string nombreFile = "coverJuego" + juego.idJuego;
                    string nombreFile  = id + ".jpg";
                    var    GeneralPath = Path.GetDirectoryName(AppDomain.CurrentDomain.BaseDirectory) + "/images/covers/";

                    if (!Directory.Exists(GeneralPath))
                    {
                        Directory.CreateDirectory(GeneralPath);
                    }

                    string filePath = GeneralPath + nombreFile;
                    using (var imageFile = new FileStream(filePath, FileMode.Create))
                    {
                        imageFile.Write(bytes, 0, bytes.Length);
                        imageFile.Flush();
                    }
                }

                juego.coverJuego = id + ".jpg";
                controller.UpdateJuego(id, juego);
                response.Success = true;
            }
            catch (Exception ex)
            {
                response.Success = false;
                response.Error   = ex.ToString();
            }
            return(Ok(response));
        }
Example #6
0
        public IHttpActionResult GetStatsJugadoresInGame(int id)
        {
            BusinessLogic.Controllers.JuegoController controller = new BusinessLogic.Controllers.JuegoController();
            DTOStatsJuego juegoStats = controller.GetStatsJugadores(id);

            if (juegoStats == null)
            {
                return(NotFound());
            }
            return(Ok(juegoStats));
        }
Example #7
0
        public IHttpActionResult GetRanking(int id)
        {
            BusinessLogic.Controllers.JuegoController controller = new BusinessLogic.Controllers.JuegoController();
            List <DTORank> ranking = controller.GetRanking(id);

            if (ranking == null)
            {
                return(NotFound());
            }
            return(Ok(ranking));
        }
Example #8
0
        // GET: api/Juego/5
        public IHttpActionResult GetJuego(int id)
        {
            BusinessLogic.Controllers.JuegoController controller = new BusinessLogic.Controllers.JuegoController();
            var juego = controller.GetJuego(id);

            if (juego == null)
            {
                return(NotFound());
            }
            return(Ok(juego));
        }
Example #9
0
        // GET: api/Juego
        public IHttpActionResult GetJuegosJugador(string loginName)
        {
            BusinessLogic.Controllers.JuegoController controller = new BusinessLogic.Controllers.JuegoController();
            List <DTOJuego> juegos = controller.GetJuegosJugador(loginName);

            if (juegos.Count == 0)
            {
                return(NotFound());
            }
            return(Ok(juegos));
        }
Example #10
0
 //Get:
 public IHttpActionResult GetImagenes(string tipo, string name)
 {
     try
     {
         BusinessLogic.Controllers.JuegoController controller = new BusinessLogic.Controllers.JuegoController();
         string base64Iamge = controller.GetImagenes(tipo, name);
         return(Ok(base64Iamge));
     }
     catch (Exception ex) {
         return(NotFound());
     }
 }
Example #11
0
        public IHttpActionResult CreateJuego(DTOJuego juego)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            //DTOBaseResponse response = new DTOBaseResponse();
            int idGame;

            try
            {
                BusinessLogic.Controllers.JuegoController controller = new BusinessLogic.Controllers.JuegoController();

                var Base64Image = juego.coverJuego;
                if (Base64Image != "")
                {
                    juego.coverJuego = "Progress";
                }

                //Chequeo toda la lista de Preguntas y las pongo en progress
                List <DTOPregunta> PreguntasConUrlAyuda = new List <DTOPregunta>();
                int Orden = 0;
                if (juego.preguntas != null)
                {
                    foreach (DTOPregunta preg in juego.preguntas)
                    {
                        Orden++;
                        preg.idPregunta = Orden;
                        if ((preg.urlAyudaPregunta != "") && (!preg.urlAyudaPregunta.StartsWith("http")))
                        {
                            DTOPregunta preguntaUrlActual = new DTOPregunta {
                                idPregunta       = Orden,
                                urlAyudaPregunta = preg.urlAyudaPregunta
                            };
                            PreguntasConUrlAyuda.Add(preguntaUrlActual);
                            preg.urlAyudaPregunta = "Progress";
                        }
                    }
                }
                juego.fechaJuego = DateTime.Now;
                //Creo Game y Cambio Cover
                idGame = controller.CreateJuego(juego);
                if (Base64Image != "")
                {
                    var bytes = Convert.FromBase64String(Base64Image);
                    //string nombreFile = "coverJuego" + juego.idJuego;
                    string nombreFile  = idGame + ".jpg";
                    var    GeneralPath = Path.GetDirectoryName(AppDomain.CurrentDomain.BaseDirectory) + "/images/covers/";

                    if (!Directory.Exists(GeneralPath))
                    {
                        Directory.CreateDirectory(GeneralPath);
                    }

                    string filePath = GeneralPath + nombreFile;
                    using (var imageFile = new FileStream(filePath, FileMode.Create))
                    {
                        imageFile.Write(bytes, 0, bytes.Length);
                        imageFile.Flush();
                    }
                    DTOJuego UpdateCoverGame = new DTOJuego {
                        coverJuego      = nombreFile,
                        Musica_idMusica = juego.Musica_idMusica
                    };


                    controller.UpdateJuego(idGame, UpdateCoverGame);
                }


                //Chequeo Lista de preguntas en Progress
                if (PreguntasConUrlAyuda != null)
                {
                    DTOJuego MiGameConPreguntas = controller.GetJuego(idGame);

                    foreach (DTOPregunta preg in PreguntasConUrlAyuda)
                    {
                        int idPregunta = MiGameConPreguntas.preguntas.ElementAt(preg.idPregunta - 1).idPregunta;

                        var    bytes       = Convert.FromBase64String(preg.urlAyudaPregunta);
                        string nombreFile  = idPregunta + ".jpg";
                        var    GeneralPath = Path.GetDirectoryName(AppDomain.CurrentDomain.BaseDirectory) + "/images/ayuda/";

                        if (!Directory.Exists(GeneralPath))
                        {
                            Directory.CreateDirectory(GeneralPath);
                        }

                        string filePath = GeneralPath + nombreFile;
                        using (var imageFile = new FileStream(filePath, FileMode.Create))
                        {
                            imageFile.Write(bytes, 0, bytes.Length);
                            imageFile.Flush();
                        }

                        preg.urlAyudaPregunta = nombreFile;
                        controller.UpdatePreguntaUrlJuego(idGame, idPregunta, preg.urlAyudaPregunta);
                    }
                }
            }
            catch (Exception ex)
            {
                idGame = -1;
            }
            return(Ok(idGame));
        }