Exemplo n.º 1
0
        public async Task <IActionResult> Edit(int id, [Bind("IdEnlace,DescripcionEnlace,UrlEnlace,IdEstadoFk,IdRolFk,IdInstitucionFk")] Enlaces enlaces)
        {
            if (id != enlaces.IdEnlace)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(enlaces);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!EnlacesExists(enlaces.IdEnlace))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["IdEstadoFk"]      = new SelectList(_context.Estados, "IdEstado", "DescripcionEstado", enlaces.IdEstadoFk);
            ViewData["IdInstitucionFk"] = new SelectList(_context.Instituciones, "IdInstitucion", "DescripcionInstitucion", enlaces.IdInstitucionFk);
            ViewData["IdRolFk"]         = new SelectList(_context.Roles, "IdRol", "DescripcionRol", enlaces.IdRolFk);
            return(View(enlaces));
        }
        public List <Enlaces> obtenerColeccionEnlaces(Dictionary <string, string> datos, string usuario)
        {
            string asignatura   = datos["asignatura"];
            string credenciales = datos["credenciales"];

            conectar();
            MySqlCommand cmd = new MySqlCommand();

            if (asignatura.Equals("todas"))
            {
                cmd.CommandText = "select e.Id,e.Link,e.Titulo,e.Descripcion,e.Valoracion,e.Imagen,e.Tipo,t.Nombre,e.Uploader,e.Activo,a.Nombre from enlaces e JOIN temas t on e.Tema = t.id JOIN asignaturas a on t.Asignatura = a.Id; ";
            }
            else if (asignatura.Equals("personal"))
            {
                cmd.CommandText = "select e.Id,e.Link,e.Titulo,e.Descripcion,e.Valoracion,e.Imagen,e.Tipo,t.Nombre,e.Uploader,e.Activo,a.Nombre from enlaces e JOIN temas t on e.Tema = t.id JOIN asignaturas a on t.Asignatura = a.Id where e.Uploader = (SELECT id from usuarios where nombre = @usuario) AND (e.activo <> 0);";
                cmd.Parameters.AddWithValue("@usuario", usuario);
            }
            else
            {
                if (credenciales.Equals("admin"))
                {
                    cmd.CommandText = "select e.Id,e.Link,e.Titulo,e.Descripcion,e.Valoracion,e.Imagen,e.Tipo,t.Nombre,e.Uploader,e.Activo,a.Nombre from enlaces e JOIN temas t on e.Tema = t.id JOIN asignaturas a on t.Asignatura = a.Id where a.Nombre = @asignatura;";
                }
                else
                {
                    cmd.CommandText = "select e.Id,e.Link,e.Titulo,e.Descripcion,e.Valoracion,e.Imagen,e.Tipo,t.Nombre,e.Uploader,e.Activo,a.Nombre from enlaces e JOIN temas t on e.Tema = t.id JOIN asignaturas a on t.Asignatura = a.Id where a.Nombre = @asignatura AND (e.activo = 1 OR e.activo = 2);";
                }
                cmd.Parameters.AddWithValue("@asignatura", asignatura);
            }
            cmd.Connection = conexion;
            MySqlDataReader Datos        = cmd.ExecuteReader();
            List <Enlaces>  listaEnlaces = null;

            if (Datos.HasRows)
            {
                listaEnlaces = new List <Enlaces>();
                while (Datos.Read())
                {
                    Enlaces enlace = new Enlaces();
                    enlace.id            = Datos.GetString(0);
                    enlace.link          = Datos.GetString(1);
                    enlace.titulo        = Datos.GetString(2);
                    enlace.descripcion   = Datos.GetString(3);
                    enlace.valoracion    = Datos.GetString(4);
                    enlace.imagen        = Datos.GetString(5);
                    enlace.tipo          = Datos.GetString(6);
                    enlace.tema          = Datos.GetString(7);
                    enlace.uploader      = Datos.GetString(8);
                    enlace.activo        = Datos.GetString(9);
                    enlace.reportarFallo = int.Parse(enlace.activo);
                    enlace.asignatura    = Datos.GetString(10);
                    listaEnlaces.Add(enlace);
                }
            }

            conexion.Close();
            return(listaEnlaces);
        }
Exemplo n.º 3
0
        public void LoadMenu()
        {
            this.Enlaces = new ObservableRangeCollection <ImagenSrc>();

            if (Settings.User.Tipo == "P")
            {
                Enlaces.Add(new ImagenSrc {
                    Name = "Inicio", Src = "ic_home_red_light_24dp.png"
                });
                //Enlaces.Add(new ImagenSrc { Name = "Mi Actividad", Src = "ic_message_red_light_24dp.png" });
                //Enlaces.Add(new ImagenSrc { Name = "Todas las Solicitudes", Src = "ic_group_red_light_24dp.png" });

                //Enlaces.Add(new ImagenSrc { Name = "Mis Solicitudes", Src = "ic_record_voice_over_red_light_24dp.png" });
                //Enlaces.Add(new ImagenSrc { Name = "Eventos", Src = "ic_event_available_red_light_24dp.png" });
                //Enlaces.Add(new ImagenSrc { Name = "Ofertas", Src = "ic_monetization_on_red_light_24dp.png" });

                //Enlaces.Add(new ImagenSrc { Src = "ic_store_red_light_24dp.png", Name = "Proveedores" });

                Enlaces.Add(new ImagenSrc {
                    Src = "ic_add_shopping_cart_red_light_24dp.png", Name = "Mis Pedidos"
                });
                //Enlaces.Add(new ImagenSrc { Src = "ic_description_red_light_24dp.png", Name = "Pedidos de clientes" });
                Enlaces.Add(new ImagenSrc {
                    Src = "ic_find_in_page_red_light_24dp.png", Name = "Mi Carta"
                });
                Enlaces.Add(new ImagenSrc {
                    Src = "ic_home_red_light_24dp.png", Name = "Perfil Proveedor"
                });
                Enlaces.Add(new ImagenSrc {
                    Src = "ic_account_circle_red_light_24dp.png", Name = "Mi Perfil"
                });
            }
            if (Settings.User.Tipo == "U")
            {
                //Enlaces.Add(new ImagenSrc { Name = "Mis Solicitudes", Src = "ic_record_voice_over_red_light_24dp.png" });
                //Enlaces.Add(new ImagenSrc { Name = "Eventos", Src = "ic_event_available_red_light_24dp.png" });
                //Enlaces.Add(new ImagenSrc { Name = "Ofertas", Src = "ic_monetization_on_red_light_24dp.png" });
                Enlaces.Add(new ImagenSrc {
                    Name = "Inicio", Src = "ic_home_red_light_24dp.png"
                });
                Enlaces.Add(new ImagenSrc {
                    Src = "ic_add_shopping_cart_red_light_24dp.png", Name = "Mis Pedidos"
                });
                //Enlaces.Add(new ImagenSrc { Src = "ic_store_red_light_24dp.png", Name = "Proveedores" });
                Enlaces.Add(new ImagenSrc {
                    Src = "ic_account_circle_red_light_24dp.png", Name = "Mi Perfil"
                });
                Enlaces.Add(new ImagenSrc {
                    Name = "¡Quiero Ser Proveedor!", Src = "ic_local_library_red_light_24dp.png"
                });
            }

            Enlaces.Add(new ImagenSrc {
                Name = "Salir", Src = "ic_highlight_off_red_light_24dp.png"
            });
        }
Exemplo n.º 4
0
        //Método para poner los tooltip
        private void listadoEnlaces_CellToolTipShowing(object sender, ToolTipShowingEventArgs e)
        {
            e.ToolTipControl.IsBalloon = true;

            if (e.Column == columnaTema)
            {
                Enlaces enlace = (Enlaces)e.Model;
                e.Text = enlace.tema;
            }
        }
Exemplo n.º 5
0
 //Abre link al hacer doble click sobre la Fila
 private void listadoEnlaces_ItemActivate(object sender, EventArgs e)
 {
     try
     {
         Object  enlaceSeleccionado = listadoEnlaces.SelectedObject;
         Enlaces enlace             = (Enlaces)enlaceSeleccionado;
         System.Diagnostics.Process.Start(enlace.link);
     }
     catch (Exception)
     {
         MsgBox.Show("Ha ocurrido un error abrir el enlace", "Error enlace", MsgBox.Buttons.OK, MsgBox.Icon.Error, MsgBox.AnimateStyle.FadeIn);
     }
 }
Exemplo n.º 6
0
        public async Task <IActionResult> Create([Bind("IdEnlace,DescripcionEnlace,UrlEnlace,IdEstadoFk,IdRolFk,IdInstitucionFk")] Enlaces enlaces)
        {
            if (ModelState.IsValid)
            {
                _context.Add(enlaces);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["IdEstadoFk"]      = new SelectList(_context.Estados, "IdEstado", "DescripcionEstado", enlaces.IdEstadoFk);
            ViewData["IdInstitucionFk"] = new SelectList(_context.Instituciones, "IdInstitucion", "DescripcionInstitucion", enlaces.IdInstitucionFk);
            ViewData["IdRolFk"]         = new SelectList(_context.Roles, "IdRol", "DescripcionRol", enlaces.IdRolFk);
            return(View(enlaces));
        }
Exemplo n.º 7
0
        private void listadoEnlaces_FormatCell(object sender, BrightIdeasSoftware.FormatCellEventArgs e)
        {
            if (e.ColumnIndex == 0)
            {
                Enlaces enlace = (Enlaces)e.Model;
                MetodosFormCursos.pintarImagenTituloDesc decoration = new Proyecto_Negocio.MetodosFormCursos.pintarImagenTituloDesc();

                decoration.ImageList       = this.imageListLarge;
                decoration.Title           = enlace.titulo;
                decoration.ImageName       = enlace.id;
                decoration.Description     = enlace.descripcion;
                decoration.titleSize       = 11;
                decoration.descriptionSize = 9;
                e.SubItem.Decoration       = decoration;
            }
        }
Exemplo n.º 8
0
        //Método para poner los tooltip
        private void listadoEnlaces_CellToolTipShowing(object sender, ToolTipShowingEventArgs e)
        {
            e.ToolTipControl.IsBalloon = true;
            Enlaces enlace = (Enlaces)e.Model;

            if (e.Column == columnaLike)
            {
                e.Text = "Voto positivo";
            }
            else if (e.Column == columnaDontLike)
            {
                e.Text = "Voto negativo";
            }
            else if (e.Column == columnaReportarFallo)
            {
                if (UsuarioConectado.credenciales == "admin")
                {
                    if (enlace.reportarFallo == 1)
                    {
                        e.Text = "Activo";
                    }
                    else if (enlace.reportarFallo == 2)
                    {
                        e.Text = "Revisar";
                    }
                    else
                    {
                        e.Text = "Caido";
                    }
                }
                else
                {
                    if (enlace.reportarFallo == 1)
                    {
                        e.Text = "Reportar link caído";
                    }
                    else
                    {
                        e.Text = "Enlace en revisión";
                    }
                }
            }
            else if (e.Column == columnaTema)
            {
                e.Text = enlace.tema;
            }
        }
        public List <Enlaces> obtenerColeccionEnlacesDeUsuario(int usuario)
        {
            conectar();
            MySqlCommand cmd = new MySqlCommand();

            cmd.CommandText = "select e.Id,e.Link,e.Titulo,e.Descripcion,e.Valoracion,e.Imagen,e.Tipo,t.Nombre,e.Uploader,e.Activo,a.Nombre from enlaces e JOIN temas t on e.Tema = t.id JOIN asignaturas a on t.Asignatura = a.Id where e.uploader = @usuario; ";
            cmd.Parameters.AddWithValue("@usuario", usuario);
            cmd.Connection = conexion;
            MySqlDataReader Datos        = cmd.ExecuteReader();
            List <Enlaces>  listaEnlaces = null;

            if (Datos.HasRows)
            {
                listaEnlaces = new List <Enlaces>();
                while (Datos.Read())
                {
                    Enlaces enlace = new Enlaces();
                    enlace.id            = Datos.GetString(0);
                    enlace.link          = Datos.GetString(1);
                    enlace.titulo        = Datos.GetString(2);
                    enlace.descripcion   = Datos.GetString(3);
                    enlace.valoracion    = Datos.GetString(4);
                    enlace.imagen        = Datos.GetString(5);
                    enlace.tipo          = Datos.GetString(6);
                    enlace.tema          = Datos.GetString(7);
                    enlace.uploader      = Datos.GetString(8);
                    enlace.activo        = Datos.GetString(9);
                    enlace.reportarFallo = int.Parse(enlace.activo);
                    enlace.asignatura    = Datos.GetString(10);
                    listaEnlaces.Add(enlace);
                }
            }

            conexion.Close();
            return(listaEnlaces);
        }
Exemplo n.º 10
0
        //  CAPTURO EVENTO CLICK CON LA CELDA QUE A CLICKADO Y SI ES LA COLUMNA LIKE
        //  OBTENGO EL OBJETO Y LE SUMO 1 LIKE
        private async void listadoEnlaces_CellClick(object sender, BrightIdeasSoftware.CellClickEventArgs e)
        {
            if (e.Column == columnaLike)
            {
                if (UsuarioConectado.credenciales.Equals("invitado"))
                {
                    MsgBox.Show("Estas funciones solo estan disponibles para usuarios registrados, por favor regístrate o logueate para disfrutar de estas ventajas", "Funciones solo para usuarios", MsgBox.Buttons.OK, MsgBox.Icon.Error, MsgBox.AnimateStyle.FadeIn);
                }
                else
                {
                    Enlaces enlace = (Enlaces)e.Model;
                    if (!enlace.like && !enlace.dontLike)
                    {
                        //Object linkSeleccionado = objectListView1.SelectedObject;
                        Dictionary <string, string> datos = new Dictionary <string, string>();
                        datos.Add("id", enlace.id);
                        datos.Add("operacion", "sumar");
                        string likeCorrecto = await m.sumarYRestarValoracion(UsuarioConectado.nombre, datos);

                        if (likeCorrecto.Equals("true"))
                        {
                            enlace.like = true;
                            listadoEnlaces.RefreshObject(enlace);
                        }
                        else
                        {
                            //¿¿MENSAJE??
                        }
                    }
                }
            }
            else if (e.Column == columnaDontLike)
            {
                if (UsuarioConectado.credenciales.Equals("invitado"))
                {
                    MsgBox.Show("Estas funciones solo estan disponibles para usuarios registrados, por favor regístrate o logueate para disfrutar de estas ventajas", "Funciones solo para usuarios", MsgBox.Buttons.OK, MsgBox.Icon.Error, MsgBox.AnimateStyle.FadeIn);
                }
                else
                {
                    Enlaces enlace = (Enlaces)e.Model;
                    if (!enlace.dontLike && !enlace.like)
                    {
                        Dictionary <string, string> datos = new Dictionary <string, string>();
                        datos.Add("id", enlace.id);
                        datos.Add("operacion", "restar");

                        string dontlikeCorrecto = await m.sumarYRestarValoracion(UsuarioConectado.nombre, datos);

                        if (dontlikeCorrecto.Equals("true"))
                        {
                            enlace.dontLike = true;
                            listadoEnlaces.RefreshObject(enlace);
                        }
                        else
                        {
                            //¿¿MENSAJE??
                        }
                    }
                }
            }
            else if (e.Column == columnaReportarFallo)
            {
                if (UsuarioConectado.credenciales.Equals("invitado"))
                {
                    MsgBox.Show("Estas funciones solo estan disponibles para usuarios registrados, por favor regístrate o logueate para disfrutar de estas ventajas", "Funciones solo para usuarios", MsgBox.Buttons.OK, MsgBox.Icon.Error, MsgBox.AnimateStyle.FadeIn);
                }
                else
                {
                    Enlaces enlace = (Enlaces)e.Model;
                    if (enlace.reportarFallo == 1)
                    {
                        DialogResult respuesta = MsgBox.Show("¿Seguro que quieres reportar que el link esta caído?", "Reportar link",
                                                             MsgBox.Buttons.YesNo, MsgBox.Icon.Question, MsgBox.AnimateStyle.FadeIn);


                        if (respuesta == DialogResult.Yes)
                        {
                            Dictionary <string, string> datos = new Dictionary <string, string>();
                            datos.Add("id", enlace.id);
                            datos.Add("credenciales", UsuarioConectado.credenciales);
                            int estadoCorrecto = await m.cambiarActivoRevisionDesactivo(UsuarioConectado.nombre, datos);

                            if (estadoCorrecto != -1)
                            {
                                enlace.reportarFallo = estadoCorrecto;
                                listadoEnlaces.RefreshObject(enlace);
                            }
                            else
                            {
                                //¿¿MENSAJE??
                            }
                        }
                    }
                }
            }
        }
        private void objectListView1_CellToolTipShowing(object sender, ToolTipShowingEventArgs e)
        {
            e.ToolTipControl.IsBalloon = true;
            if (listaAMostrar.Equals("enlaces"))
            {
                Enlaces enlace = (Enlaces)e.Model;

                if (e.Column == Column5)
                {
                    e.Text = enlace.tema;
                }
                else if (e.Column == Column3)
                {
                    e.Text = enlace.titulo;
                }
                else if (e.Column == Column7)
                {
                    if (enlace.reportarFallo == 1)
                    {
                        e.Text = "Activo";
                    }
                    else if (enlace.reportarFallo == 2)
                    {
                        e.Text = "Revisar";
                    }
                    else
                    {
                        e.Text = "Caido";
                    }
                }
            }
            else
            {
                Usuario usuario = (Usuario)e.Model;
                if (e.Column == Column6)
                {
                    if (UsuarioConectado.nombre.Equals("admin"))
                    {
                        if (usuario.Credenciales.Equals("admin"))
                        {
                            e.Text = "Quitar privilegios de admin";
                        }
                    }
                    if (usuario.Credenciales.Equals("normal"))
                    {
                        e.Text = "Conceder privilegios de admin";
                    }
                }
            }

            if (e.Column == Column8)
            {
                if (listaAMostrar.Equals("usuarios"))
                {
                    Usuario usuario = (Usuario)e.Model;
                    if (usuario.Credenciales.Equals("admin") && !UsuarioConectado.nombre.Equals("admin"))
                    {
                    }
                    else
                    {
                        e.Text = "Eliminar";
                    }
                }
                else
                {
                    e.Text = "Eliminar";
                }
            }
        }
        //  CAPTURO EVENTO CLICK CON LA CELDA QUE A CLICKADO Y SI ES LA COLUMNA LIKE
        //  OBTENGO EL OBJETO Y LE SUMO 1 LIKE
        private async void objectListView1_CellClick(object sender, BrightIdeasSoftware.CellClickEventArgs e)
        {
            datos.Clear();
            if (e.Column == Column7)
            {
                if (listaAMostrar.Equals("enlaces"))
                {
                    Enlaces enlace = (Enlaces)e.Model;
                    Dictionary <string, string> datos = new Dictionary <string, string>();
                    datos.Add("id", enlace.id);
                    datos.Add("credenciales", UsuarioConectado.credenciales);
                    int estadoCorrecto = await mfc.cambiarActivoRevisionDesactivo(UsuarioConectado.nombre, datos);

                    if (estadoCorrecto != -1)
                    {
                        enlace.reportarFallo = estadoCorrecto;
                        objectListView1.RefreshObject(enlace);
                    }
                    else
                    {
                        MsgBox.Show("Ha ocurrido un error al actualizar la Base de datos", "ATENCIÓN", MsgBox.Buttons.OK, MsgBox.Icon.Error, MsgBox.AnimateStyle.FadeIn);
                    }
                }
            }
            else if (e.Column == Column6)
            {
                if (listaAMostrar.Equals("usuarios"))
                {
                    Usuario usuario = (Usuario)e.Model;
                    if (usuario.Credenciales.Equals("admin") && !UsuarioConectado.nombre.Equals("admin"))
                    {
                    }
                    else
                    {
                        bool   cambiar = false;
                        string newRango;
                        if (usuario.Credenciales.Equals("normal"))
                        {
                            newRango = "admin";
                        }
                        else
                        {
                            newRango = "normal";
                        }

                        datos.Add("id", usuario.Id);
                        datos.Add("nombre", usuario.Nombre);
                        datos.Add("newRango", newRango);

                        if (UsuarioConectado.nombre.Equals("admin"))
                        {
                            cambiar = true;
                        }
                        else
                        {
                            DialogResult respuesta = MsgBox.Show("¿Está seguro de que desea conceder privilegios de Admin al usuario " + usuario.User +
                                                                 "? Una vez tenga privilegios de Admin no podrá quitarselos usted, tendrá que mandar un correo al administrador para que los quite.", "Conceder privilegios", MsgBox.Buttons.YesNo, MsgBox.Icon.Question, MsgBox.AnimateStyle.FadeIn);
                            if (respuesta == DialogResult.Yes)
                            {
                                cambiar = true;
                            }
                        }
                        if (cambiar)
                        {
                            if (await mfa.cambiarRango(UsuarioConectado.nombre, datos))
                            {
                                usuario.Credenciales = newRango;
                                objectListView1.RefreshObject(usuario);
                            }
                            else
                            {
                                MsgBox.Show("Ha ocurrido un error al actualizar la Base de datos", "ATENCIÓN", MsgBox.Buttons.OK, MsgBox.Icon.Error, MsgBox.AnimateStyle.FadeIn);
                            }
                        }
                    }
                }
            }
            else if (e.Column == Column8)
            {
                if (listaAMostrar.Equals("enlaces"))
                {
                    Enlaces enlace = (Enlaces)e.Model;

                    DialogResult respuesta = MsgBox.Show("¿Está seguro de que desea eliminar el enlace con id " + enlace.id + "?", "Eliminar", MsgBox.Buttons.YesNo, MsgBox.Icon.Question, MsgBox.AnimateStyle.FadeIn);

                    if (respuesta == DialogResult.Yes)
                    {
                        Dictionary <string, string> datos = new Dictionary <string, string>();
                        datos.Add("id", enlace.id);

                        bool correcto = await mfa.borrarEnlace(UsuarioConectado.nombre, datos);

                        if (correcto)
                        {
                            objectListView1.RemoveObject(enlace);
                            objectListView1.BuildList();
                        }
                        else
                        {
                            MsgBox.Show("Ha ocurrido un error al borrar el enlace", "Error al borrar", MsgBox.Buttons.OK, MsgBox.Icon.Error, MsgBox.AnimateStyle.FadeIn);
                        }
                    }
                }
                else
                {
                    Usuario usuario = (Usuario)e.Model;
                    if (usuario.Credenciales.Equals("admin") && !UsuarioConectado.nombre.Equals("admin"))
                    {
                    }
                    else
                    {
                        DialogResult respuesta = MsgBox.Show("¿Está seguro de que desea eliminar al usuario " + usuario.User + "?", "Eliminar", MsgBox.Buttons.YesNo, MsgBox.Icon.Question, MsgBox.AnimateStyle.FadeIn);

                        if (respuesta == DialogResult.Yes)
                        {
                            Dictionary <string, string> datos = new Dictionary <string, string>();
                            datos.Add("credenciales", UsuarioConectado.credenciales);
                            datos.Add("idBorrar", usuario.Id);
                            bool correcto = await mfa.borrarUsuario(UsuarioConectado.nombre, datos);

                            if (correcto)
                            {
                                objectListView1.RemoveObject(usuario);
                                objectListView1.BuildList();
                            }
                            else
                            {
                                MsgBox.Show("Ha ocurrido un error al borrar al Usuario", "Error al borrar", MsgBox.Buttons.OK, MsgBox.Icon.Error, MsgBox.AnimateStyle.FadeIn);
                            }
                        }
                    }
                }
            }
        }