Beispiel #1
0
        public bool AddUserToleague(Invitacion invitacion)
        {
            try
            {
                Task <Persona> tp = Task.Factory.StartNew(() => { return(GetDatosUsuarioByMail(invitacion.Mail)); });
                Liga           l  = GetLigaById(invitacion.Id);

                Persona p = tp.Result;
                var     a = p.Cuentas.Where(x => x.Value == invitacion.Mail).Select(x => x.Key).First();

                if (l.Usuarios == null)
                {
                    l.Usuarios = new Dictionary <string, string>();
                }

                l.Usuarios.Add(a, invitacion.Mail);
                WriteConcernResult wcr = GetCollection <Liga>(Settings.Default.ColeccionLiga).Update(
                    Query.EQ("_id", new ObjectId(l.Id)),
                    Update.Replace(l));
                if (wcr.Ok)
                {
                    return(true);
                }
                return(false);
            }
            catch (Exception ex)
            {
                return(false);
            }
        }
 public RetornoInvitacionDetallada(Invitacion invitacion, ContextAIG context)
 {
     this.idInvitacion = invitacion.idInvitacion;
     this.idPersona    = invitacion.idPersona;
     this.estado       = invitacion.estado;
     this.cancelada    = invitacion.cancelada;
     this.reunion      = new ReunionDentroInvitacion(context.TBL_Reunion.Where(x => x.id == invitacion.idReunion).FirstOrDefault(), context);
 }
Beispiel #3
0
        // GET: /Liga/Create

        //public ActionResult Create()
        //{
        //    List<SelectListItem> lst = new List<SelectListItem>();
        //    lst.Add(new SelectListItem() { Text = "Freemium", Value = "Freemium" });
        //    if (System.Web.Security.Roles.IsUserInRole("coach") || System.Web.Security.Roles.IsUserInRole("administrator"))
        //        lst.Add(new SelectListItem() { Text = "Standard", Value = "Standard" });
        //    SelectList sl = new SelectList(lst, "Value", "Text");
        //    ViewBag.Tipo = sl;

        //    return View();
        //}

        //
        // POST: /Liga/Create

        //[HttpPost]
        //public ActionResult Create(Liga liga )
        //{
        //    try
        //    {
        //        // TODO: Add insert logic here
        //        liga.Entrenador = User.Identity.Name;
        //        if (manager.SaveLiga(liga))
        //            return RedirectToAction("Index");

        //        return View(liga);
        //    }
        //    catch (Exception ex)
        //    {
        //        ModelState.AddModelError("",ex);
        //        return View(liga);
        //    }
        //}

        //
        // GET: /Liga/Edit/5

        //public ActionResult Edit(string id)
        //{

        //    return View(manager.GetLigaById(id));
        //}

        ////
        //// POST: /Liga/Edit/5

        //[HttpPost]
        //public ActionResult Edit(int id, FormCollection collection)
        //{
        //    try
        //    {
        //        // TODO: Add update logic here

        //        return RedirectToAction("Index");
        //    }
        //    catch
        //    {
        //        return View();
        //    }
        //}

        //
        // GET: /Liga/Delete/5

        //public ActionResult Delete(string id)
        //{

        //    return View(manager.GetLigaById(id));
        //}

        //
        // POST: /Liga/Delete/5

        //[HttpPost]
        //public ActionResult Delete(Liga liga)
        //{
        //    try
        //    {
        //        // TODO: Add delete logic here
        //        if (manager.DeleteLiga(liga))
        //        {
        //            return RedirectToAction("Index");
        //        }
        //        return View(liga);

        //    }
        //    catch(Exception ex)
        //    {
        //        ModelState.AddModelError("",ex);
        //        return View(liga);
        //    }
        //}


        public ActionResult EnvioInvitacion(string id)
        {
            Invitacion v = new Invitacion()
            {
                LigaId = id
            };

            return(PartialView(v));
        }
Beispiel #4
0
        public ActionResult AceptarInvitacionLiga(string id)
        {
            ViewBag.IdLiga = id;
            Invitacion inv = new Invitacion()
            {
                LigaId = id, Estado = true, Mail = "*****@*****.**"
            };

            return(View(inv));
        }
Beispiel #5
0
        public ActionResult AceptarInvitacionLiga(Invitacion invitacion)
        {
            if (manager.AddUserToleague(invitacion.LigaId, User.Identity.Name))
            {
                return(RedirectToAction("Index", "Home"));
            }


            ModelState.AddModelError("", "Error al Añadir usuario a la liga");
            return(View(invitacion));
        }
Beispiel #6
0
        public ActionResult InvitacionLiga()
        {
            Invitacion inv = new Invitacion()
            {
                Remitente = "usuario x",
                LigaName  = "liga pruebas",
                Url       = "www.prodactive.co"
            };

            return(View(inv));
        }
        public IActionResult InsertarReunion([FromBody] DatosReunion data)
        {
            Reunion reunion = new Reunion
            {
                idCreador   = data.idCreador,
                asunto      = data.asunto,
                descripcion = data.descripcion,
                idLugar     = data.idLugar,
                fechaInicio = data.fechaInicio,
                fechaFin    = data.fechaFin,
                cancelada   = "F"
            };

            context.Add(reunion);
            context.SaveChanges();

            //Creación de invitaciones
            for (int i = 0; i < data.idPersonas.Count(); i++)
            {
                if (data.idCreador != data.idPersonas[i])
                {
                    Invitacion detalle = new Invitacion
                    {
                        idReunion = reunion.id,
                        idPersona = data.idPersonas[i],
                        estado    = "E",
                        cancelada = "F",
                    };
                    context.Add(detalle);
                }
            }
            context.SaveChanges();

            RetornoReunion result  = new RetornoReunion(reunion, context);
            string         correos = new WSController(context).CorreosPersonas(new IdsPersonas {
                ids = data.idPersonas
            });                                                                                                    //"[email protected], [email protected]";

            Correo(result, correos);
            Dictionary <string, int> resultado = new Dictionary <string, int>();

            resultado.Add("idInsertado", reunion.id);
            return(Ok(resultado));
        }
Beispiel #8
0
        public RetornoResultado Cancelar(IdInvitacion data)
        {
            Invitacion invitacion = context.TBL_Invitacion.Where(x => x.idInvitacion == data.idInvitacion).FirstOrDefault();

            if (invitacion != null)
            {
                Reunion reunion = context.TBL_Reunion.Where(x => x.id == invitacion.idReunion).FirstOrDefault();
                if (reunion.fechaInicio < DateTime.Now && DateTime.Now < reunion.fechaFin)
                {
                    return new RetornoResultado
                           {
                               mensaje = "No se puede cambiar el estado de esta invitación. La reunión ya empezó.",
                               error   = 1
                           }
                }
                ;
                if (reunion.fechaFin <= DateTime.Now)
                {
                    return new RetornoResultado
                           {
                               mensaje = "No se puede cambiar el estado de esta invitación. La reunión ya culminó.",
                               error   = 1
                           }
                }
                ;
                invitacion.cancelada = "T";
                context.SaveChanges();
                return(new RetornoResultado
                {
                    mensaje = "Ha cancelado la invitación.",
                    error = 0
                });
            }
            return(new RetornoResultado
            {
                mensaje = "No existe esa invitación.",
                error = 1
            });
        }
    }
}
Beispiel #9
0
        public ActionResult EnvioInvitacion(Invitacion invitacion)
        {
            invitacion.Remitente = User.Identity.Name;
            invitacion.LigaName  = manager.GetLigaById(invitacion.LigaId).Nombre;
            invitacion.Url       = "http://prodactive.co/Account/Login?ReturnUrl=%2fLiga%2fAceptarInvitacionLiga%2f" + invitacion.LigaId;
            if (!manager.CorreoDisponible(invitacion.Mail))
            {
                string body = RenderViewToString("Liga", "InvitacionLiga", invitacion);
                log.Info("Html invitacion");
                log.Info(body);
                //string message = "<b>soy una invitacion</b><a href=\"http://localhost:58640/Account/Login?ReturnUrl=%2fLiga%2fAceptarInvitacionLiga%2f" + invitacion.LigaId + "\">prodactive</a>";
                manager.SendMail(invitacion.Mail, "Te han invitado a pertenecer a una liga", body);
                TempData["MessageInvitacion"] = "El usuario ya existe en la plataforma, se ha enviado un correo de invitación para pertencer a la liga.";
            }
            else
            {
                if (ModelState.IsValid)
                {
                    if (manager.SaveInvitacion(invitacion))
                    {
                        //enviar mail
                        string body = RenderViewToString("Liga", "InvitacionLiga", invitacion);
                        log.Info("Html invitacion");
                        log.Info(body);

                        //string message = "<b>soy una invitacion</b><a href=\"http://localhost:58640/Account/Login?ReturnUrl=%2fLiga%2fAceptarInvitacionLiga%2f" + invitacion.LigaId + "\">prodactive</a>";
                        manager.SendMail(invitacion.Mail, "Invitacion Prodactive", body);
                        TempData["MessageInvitacion"] = "El usuario no existe en la plataforma, se enviado un correo de invitacion para ingresar en la plataforma.";
                    }
                }
                else
                {
                    ModelState.AddModelError("", "no se pudo Guardar la invitacion");
                }
            }

            return(PartialView("_invitacion"));
        }
Beispiel #10
0
    public static Invitacion getInvitacionID(int id)
    {
        GetInvitacionDSTableAdapters.InvitacionTableAdapter adapter = new GetInvitacionDSTableAdapters.InvitacionTableAdapter();
        GetInvitacionDS.InvitacionDataTable table = adapter.GetInvitacionID(id);
        Invitacion obj = null;

        if (table != null && table.Rows.Count == 1)
        {
            GetInvitacionDS.InvitacionRow row = table[0];
            obj = new Invitacion()
            {
                id              = row.id,
                token           = row.token,
                fechaInvitacion = row.fechaInvitacion,
                fechaRespuesta  = row.fechaRespuesta,
                estado          = row.estado,
                fkCuenta        = row.fkCuenta,
                fkPersona       = row.fkPersona
            };
            return(obj);
        }
        return(obj);
    }
Beispiel #11
0
 public bool SaveInvitacion(Invitacion invitacion)
 {
     return(Save(invitacion, Settings.Default.ColeccionInvitaciones));
 }
Beispiel #12
0
        private void AtenderServidor()//Funcion que atiende al servidor. Dependiendo del codigo que reciba hara unas acciones.
        {
            while (true)
            {
                byte[] msg2 = new byte[80];
                try
                {
                    server.Receive(msg2);
                }
                catch (SocketException ex)
                {
                    MessageBox.Show(ex.Message.ToString());
                }

                string[] mensaje = Encoding.ASCII.GetString(msg2).Split(':');

                int    codigo    = Convert.ToInt32(mensaje[0]);
                string contenido = mensaje[1].Split('\0')[0];


                switch (codigo)
                {
                case 1:
                    if (contenido == "0")
                    {
                        DelegadoInicioSesion delegadoStart = new DelegadoInicioSesion(DelegarInicioSesion);
                        Enviar.Invoke(delegadoStart);
                        MessageBox.Show("Sesion Iniciada");
                    }
                    else
                    {
                        string mensaje2 = "0/" + User.Text;
                        byte[] msg3     = System.Text.Encoding.ASCII.GetBytes(mensaje2);
                        server.Send(msg3);
                        server.Shutdown(SocketShutdown.Both);
                        server.Close();
                        MessageBox.Show("El nombre ya está registrado");
                        Atender.Abort();
                    }
                    break;

                case 2:
                    if (contenido == "0")
                    {
                        DelegadoInicioSesion delegadoStart = new DelegadoInicioSesion(DelegarInicioSesion);
                        Enviar.Invoke(delegadoStart);
                        MessageBox.Show("Sesion Iniciada");
                    }
                    else
                    {
                        string mensaje2 = "0/" + User.Text;
                        byte[] msg3     = System.Text.Encoding.ASCII.GetBytes(mensaje2);
                        server.Send(msg3);
                        server.Shutdown(SocketShutdown.Both);
                        server.Close();
                        MessageBox.Show("El nombre y/o la contraseña son incorrectos.");
                        Atender.Abort();
                    }
                    break;

                case 3:
                    if (contenido == "NoEncontrado")
                    {
                        MessageBox.Show("No se ha encontrado el jugador");
                    }
                    else if (contenido != "")
                    {
                        MessageBox.Show("Número de turnos:" + contenido);
                    }
                    else
                    {
                        MessageBox.Show("Error");
                    }
                    break;

                case 4:
                    if (contenido == "NoEncontrado")
                    {
                        MessageBox.Show("No se ha encontrado la partida");
                    }
                    else if (contenido != "")
                    {
                        MessageBox.Show("Jugadores:" + contenido);
                    }
                    else
                    {
                        MessageBox.Show("Error");
                    }
                    break;

                case 5:
                    if (contenido == "NoEncontrado")
                    {
                        MessageBox.Show("No se ha encontrado el jugador");
                    }
                    else if (contenido != "")
                    {
                        MessageBox.Show("Número de turnos:" + contenido);
                    }
                    else
                    {
                        MessageBox.Show("Error");
                    }
                    break;

                case 6:
                    DelegadoListaConectados delegadoLista = new DelegadoListaConectados(RellenarListaConectados);
                    dataGridView1.Invoke(delegadoLista, new object[] { contenido });
                    break;

                case 7:
                    DelegadoInvitacionRecibida delegadoInv = new DelegadoInvitacionRecibida(DelegarInvitacionRecibida);
                    Invitacion.Invoke(delegadoInv, new object[] { contenido });
                    UsuarioInvita = contenido;
                    break;

                case 8:
                    Aceptados.Add(contenido);
                    Respuestas.Add(contenido);
                    MessageBox.Show(contenido + " ha aceptado la partida");
                    if (Invitaciones == Aceptados.Count)
                    {
                        MessageBox.Show("Todos los jugadores han aceptado la partida");
                        Empezar_Partida();
                        Respuestas.Clear();
                        Aceptados.Clear();
                    }
                    else if ((Invitaciones == Respuestas.Count()) && (Respuestas.Count != Aceptados.Count()))
                    {
                        MessageBox.Show("Algun jugador ha rechazado la partida");
                        DelegadoInvitacionRechazada delegadorech1 = new DelegadoInvitacionRechazada(DelegarInvitacionRechazada);
                        Invite.Invoke(delegadorech1);
                        Invitaciones = 0;
                        Respuestas.Clear();
                        Aceptados.Clear();
                    }
                    break;

                case 9:
                    MessageBox.Show(contenido + " ha rechazado la partida");
                    Respuestas.Add(contenido);
                    if ((Invitaciones == Respuestas.Count()) && (Respuestas.Count != Aceptados.Count()))
                    {
                        DelegadoInvitacionRechazada delegadorech2 = new DelegadoInvitacionRechazada(DelegarInvitacionRechazada);
                        Invite.Invoke(delegadorech2);
                        MessageBox.Show("Algun jugador ha rechazado la partida");
                        Invitaciones = 0;
                        Respuestas.Clear();
                        Aceptados.Clear();
                    }
                    break;

                case 10:
                    IDChat = Convert.ToInt32(contenido);
                    MessageBox.Show("Iniciando partida " + IDChat);
                    DelegadoInvitacionRechazada delegadorech3 = new DelegadoInvitacionRechazada(DelegarInvitacionRechazada);
                    Invite.Invoke(delegadorech3);
                    string mensaje3 = "13/" + IDChat + "," + User.Text + "," + EquipoBatallaPropio.GetPokemon(0).Nombre + "," + EquipoBatallaPropio.GetPokemon(1).Nombre + "," + EquipoBatallaPropio.GetPokemon(2).Nombre;
                    byte[] msg      = System.Text.Encoding.ASCII.GetBytes(mensaje3);
                    server.Send(msg);
                    break;

                case 11:
                    int ID = Convert.ToInt32(contenido.Split('-')[0]);
                    contenido = contenido.Split('-')[1];
                    int IDindex = BuscarID(ID);
                    Chats[IDindex].EscribirMensaje(contenido);
                    break;

                case 12:
                    ID = Convert.ToInt32(contenido.Split('-')[0]);
                    string usuario = contenido.Split('-')[1];
                    int    salida  = Convert.ToInt32(contenido.Split('-')[2]);
                    IDindex = BuscarID(ID);
                    if (salida == 1)
                    {
                        MessageBox.Show("Partida finalizada");
                    }
                    else
                    {
                        MessageBox.Show("El usuario " + usuario + " ha abandonado la partida");
                    }
                    Chats[IDindex].AbandonarPartida();
                    break;

                case 13:
                    string[] TuEquipo = contenido.Split(',');
                    SetEquipoPropio(TuEquipo[0], TuEquipo[1], TuEquipo[2]);
                    DelegadoActivarInvitacion delegadoInvite = new DelegadoActivarInvitacion(DelegarActivarInvitacion);
                    Invite.Invoke(delegadoInvite);
                    break;

                case 14:
                    string[] content = contenido.Split('-');
                    int      IDa     = Convert.ToInt32(content[0]);
                    contenido = content[1];
                    content   = contenido.Split(',');
                    bool OponenteRecibido = false;
                    if (content[0] != User.Text)
                    {
                        SetEquipoOponente(content[1], content[2], content[3]);
                        Oponente         = content[0];
                        OponenteRecibido = true;
                    }
                    if (OponenteRecibido == true)
                    {
                        ThreadStart ts2   = delegate { AbrirChat(); };
                        Thread      forms = new Thread(ts2);
                        forms.Start();
                    }
                    break;

                case 15:
                    ID        = Convert.ToInt32(contenido.Split('-')[0]);
                    contenido = contenido.Split('-')[1];
                    IDindex   = BuscarID(ID);
                    Chats[IDindex].bt.RecibirOrden(contenido);
                    break;

                case 16:
                    if (contenido == "0")
                    {
                        MessageBox.Show("Usuario Eliminado");
                        DelegadoDesconexion delegadoStart = new DelegadoDesconexion(DelegarDesconexion);
                        Desconexion.Invoke(delegadoStart);
                    }
                    else
                    {
                        MessageBox.Show("No se ha podido eliminar el usuario");
                    }
                    break;

                case 17:
                    ID        = Convert.ToInt32(contenido.Split('-')[0]);
                    contenido = contenido.Split('-')[1];
                    IDindex   = BuscarID(ID);
                    Chats[IDindex].PokemonDebilitadoDelegado(contenido);
                    break;
                }
            }
        }
 public IActionResult InvitacionForm(Invitacion invitacion)
 {
     Repositorio.AgregarInvitacion(invitacion);
     return(View("Gracias", invitacion));
 }