コード例 #1
0
        protected void btn_aceptar_eliminacion_Click(object sender, EventArgs e)
        {
            int id_director = Convert.ToInt32(id_item_por_eliminar.Value);

            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                Director director = cxt.Directores.FirstOrDefault(pp => pp.director_id == id_director);

                if (director.Tesinas.Count == 0)
                {
                    director.director_fecha_baja = DateTime.Today;
                    if (
                        (director.Persona.Administrador == null || director.Persona.Administrador.administrador_fecha_baja != null) && //no tiene el perfil o esta dado de baja
                        (director.Persona.Tesista == null || director.Persona.Tesista.tesista_fecha_baja != null) &&                   //no tiene el perfil o esta dado de baja
                        (director.Persona.Jurado == null || director.Persona.Jurado.juez_fecha_baja != null)                           //no tiene el perfil o esta dado de baja
                        )
                    {
                        director.Persona.persona_usuario = "";
                        director.Persona.persona_clave   = "";
                    }

                    cxt.SaveChanges();
                    MessageBox.Show(this, "Se ha eliminado correctamente al director " + director.Persona.persona_nomyap, MessageBox.Tipo_MessageBox.Success);
                }
                else
                {
                    MessageBox.Show(this, "No se puede eliminar el director " + director.Persona.persona_nomyap + " el mismo tiene tesinas asociadas. ", MessageBox.Tipo_MessageBox.Warning);
                }
            }

            ObtenerDirectores();
        }
コード例 #2
0
        protected void btn_editar_ServerClick(object sender, EventArgs e)
        {
            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                int id_director = Convert.ToInt32(((HtmlButton)sender).Attributes["data-id"]);

                Director director = cxt.Directores.FirstOrDefault(pp => pp.director_id == id_director);
                if (director != null)
                {
                    tb_dni_director.Value                = director.Persona.persona_dni.ToString();
                    tb_domicilio.Value                   = director.Persona.persona_domicilio;
                    tb_email.Value                       = director.Persona.persona_email;
                    tb_nombre_director.Value             = director.Persona.persona_nomyap;
                    tb_telefono.Value                    = director.Persona.persona_telefono;
                    tb_usuario.Value                     = director.Persona.persona_usuario;
                    tr_pass_alta.Visible                 = false;
                    tr_pass_edit.Visible                 = true;
                    chk_cambiar_clave.Checked            = false;
                    tr_chk_change_pass.Visible           = false;
                    lbl_agregar_actualizar_director.Text = "Actualizar ";

                    tb_dni_director.Disabled = true;
                    btn_chequear_dni.Visible = false;

                    btn_guardar.Visible = true;

                    tb_tabla_resto_campos.Visible = true;

                    hidden_id_director_editar.Value = director.director_id.ToString();

                    string script = "<script language=\"javascript\"  type=\"text/javascript\">$(document).ready(function() { $('#agregar_director').modal('show')});</script>";
                    ScriptManager.RegisterStartupScript(Page, this.GetType(), "ShowPopUp", script, false);
                }
            }
        }
コード例 #3
0
        protected void btn_guardar_nuevo_mail_ServerClick(object sender, EventArgs e)
        {
            this.Validate("email");
            if (this.IsValid)
            {
                Persona p = Session["UsuarioLogueado"] as Persona;
                using (HabProfDBContainer cxt = new HabProfDBContainer())
                {
                    Persona p_cxt = cxt.Personas.FirstOrDefault(pp => pp.persona_id == p.persona_id);
                    p_cxt.persona_email          = tb_email.Value;
                    p_cxt.persona_email_validado = false;
                    cxt.SaveChanges();

                    //cargo el nuevo mail en la ventana y lo seteo como no validado
                    lbl_email.Text           = p_cxt.persona_email;
                    lbl_validado.Text        = "Sin validar";
                    lbl_validado.ToolTip     = "No va a poder recuperar la contraseña si no tiene validado su correo";
                    lbl_correo_a_editar.Text = p_cxt.persona_email;
                    p_validado_mail_editar.Attributes["class"] = "text-danger";
                    lbl_estado_mail_a_editar.Text = "sin validar";
                    lbl_validado.ForeColor        = Color.DarkRed;
                    lnk_enviar_validacion.Visible = true;

                    Enviar_validacion();
                }
            }
            else
            {
                string script = "<script language=\"javascript\"  type=\"text/javascript\">$(document).ready(function() { $('#modificar_mail').modal('show')});</script>";
                ScriptManager.RegisterStartupScript(Page, this.GetType(), "ShowPopUp", script, false);
            }
        }
コード例 #4
0
        public void Enviar_notificaciones(List <Tesina> tesinas)
        {
            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                foreach (Tesina tesina in tesinas)
                {
                    Tesina tesina_cxt = cxt.Tesinas.FirstOrDefault(tt => tt.tesina_id == tesina.tesina_id);

                    Envio_mail registro_envio_mail_notificacion = new Envio_mail()
                    {
                        persona_id            = tesina_cxt.Tesista.Persona.persona_id,
                        envio_fecha_hora      = DateTime.Now,
                        envio_email_destino   = tesina_cxt.Tesista.Persona.persona_email,
                        envio_respuesta_clave = "no se usa",
                        envio_tipo            = MiEmail.tipo_mail.notificacion_recordatorio_automatico.ToString()
                    };

                    cxt.Envio_mails.Add(registro_envio_mail_notificacion);

                    MiEmail mail = new MiEmail(registro_envio_mail_notificacion, tesina);

                    if (mail.Enviar_mail())
                    {
                        cxt.SaveChanges();
                    }
                }
            }
        }
コード例 #5
0
        protected void btn_aceptar_eliminacion_Click(object sender, EventArgs e)
        {
            int id_tesista = Convert.ToInt32(id_item_por_eliminar.Value);

            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                Tesista tesista = cxt.Tesistas.FirstOrDefault(pp => pp.tesista_id == id_tesista);
                tesista.tesista_fecha_baja = DateTime.Today;

                if (
                    (tesista.Persona.Administrador == null || tesista.Persona.Administrador.administrador_fecha_baja != null) && //no tiene el perfil o esta dado de baja
                    (tesista.Persona.Director == null || tesista.Persona.Director.director_fecha_baja != null) &&                //no tiene el perfil o esta dado de baja
                    (tesista.Persona.Jurado == null || tesista.Persona.Jurado.juez_fecha_baja != null)                           //no tiene el perfil o esta dado de baja
                    )
                {
                    tesista.Persona.persona_usuario = "";
                    tesista.Persona.persona_clave   = "";
                }

                cxt.SaveChanges();
                MessageBox.Show(this, "Se ha inhabilitado correctamente al tesista " + tesista.Persona.persona_nomyap, MessageBox.Tipo_MessageBox.Success);
            }

            ObtenerTesistas();
        }
コード例 #6
0
        private void Enviar_validacion()
        {
            Persona p = Session["UsuarioLogueado"] as Persona;

            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                Persona p_cxt = cxt.Personas.FirstOrDefault(pp => pp.persona_id == p.persona_id);

                Envio_mail registro_envio_mail = new Envio_mail()
                {
                    persona_id            = p_cxt.persona_id,
                    envio_fecha_hora      = DateTime.Now,
                    envio_email_destino   = p_cxt.persona_email, //de haber mas de un destinatario separar por coma Ej: mail + "," + mail2 + "," + mail3
                    envio_respuesta_clave = Guid.NewGuid().ToString(),
                    envio_tipo            = MiEmail.tipo_mail.validacion.ToString()
                };

                cxt.Envio_mails.Add(registro_envio_mail);
                cxt.SaveChanges();

                MiEmail mail = new MiEmail(registro_envio_mail);

                if (mail.Enviar_mail())
                {
                    MessageBox.Show(this, "El correo se envió satisfactoriamente", MessageBox.Tipo_MessageBox.Success);

                    lbl_validado.Text      = "Sin validar";
                    lbl_validado.ForeColor = Color.DarkRed;
                }
                else
                {
                    MessageBox.Show(this, "Ocurrio un error en el envio del correo", MessageBox.Tipo_MessageBox.Warning, "Oops!!");
                }
            }
        }
コード例 #7
0
        protected void btn_chequear_dni_ServerClick(object sender, EventArgs e)
        {
            Validate("dni_persona");
            if (IsValid)
            {
                using (HabProfDBContainer cxt = new HabProfDBContainer())
                {
                    int dni = 0;
                    if (Int32.TryParse(tb_dni_juez.Value, out dni))
                    {
                        Persona persona = cxt.Personas.FirstOrDefault(pp => pp.persona_dni == dni);
                        if (persona != null)
                        {
                            tb_dni_juez.Value    = persona.persona_dni.ToString();
                            tb_domicilio.Value   = persona.persona_domicilio;
                            tb_email.Value       = persona.persona_email;
                            tb_nombre_juez.Value = persona.persona_nomyap;
                            tb_telefono.Value    = persona.persona_telefono;
                        }
                    }
                }

                tb_dni_juez.Disabled     = true;
                btn_chequear_dni.Visible = false;
                btn_guardar.Visible      = true;

                tb_tabla_resto_campos.Visible = true;
            }

            string script = "<script language=\"javascript\"  type=\"text/javascript\">$(document).ready(function() { $('#agregar_juez').modal('show')});</script>";

            ScriptManager.RegisterStartupScript(Page, this.GetType(), "ShowPopUp", script, false);
        }
コード例 #8
0
ファイル: admin_mesas.aspx.cs プロジェクト: jfberton/HabProf
        protected void btn_aceptar_eliminacion_Click(object sender, EventArgs e)
        {
            int id_mesa = Convert.ToInt32(id_item_por_eliminar.Value);

            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                Mesa mesa = cxt.Mesas.FirstOrDefault(pp => pp.mesa_id == id_mesa);
                if (mesa.mesa_estado == "Generada")
                {
                    List <int> id_jueces = mesa.Jueces.Select(jj => jj.juez_id).ToList();
                    foreach (int id_juez in id_jueces)
                    {
                        Jurado j = cxt.Jueces.FirstOrDefault(jj => jj.juez_id == id_juez);
                        mesa.Jueces.Remove(j);
                    }

                    List <int> id_tesinas = mesa.Tesinas.Select(tt => tt.tesina_id).ToList();
                    foreach (int id_tesina in id_tesinas)
                    {
                        Tesina t = cxt.Tesinas.FirstOrDefault(tt => tt.tesina_id == id_tesina);
                        mesa.Tesinas.Remove(t);
                    }

                    cxt.Mesas.Remove(mesa);
                    cxt.SaveChanges();
                    MessageBox.Show(this, "Se ha eliminado correctamente la mesa", MessageBox.Tipo_MessageBox.Success);
                }
                else
                {
                    MessageBox.Show(this, "No se puede eliminar una mesa que tenga estado distinta de Generada", MessageBox.Tipo_MessageBox.Danger);
                }
            }

            ObtenerMesas();
        }
コード例 #9
0
        protected void btn_editar_ServerClick(object sender, EventArgs e)
        {
            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                int id_juez = Convert.ToInt32(((HtmlButton)sender).Attributes["data-id"]);

                Jurado juez = cxt.Jueces.FirstOrDefault(pp => pp.juez_id == id_juez);
                if (juez != null)
                {
                    tb_dni_juez.Value                = juez.Persona.persona_dni.ToString();
                    tb_domicilio.Value               = juez.Persona.persona_domicilio;
                    tb_email.Value                   = juez.Persona.persona_email;
                    tb_nombre_juez.Value             = juez.Persona.persona_nomyap;
                    tb_telefono.Value                = juez.Persona.persona_telefono;
                    lbl_agregar_actualizar_juez.Text = "Editar ";

                    tb_dni_juez.Disabled     = true;
                    btn_chequear_dni.Visible = false;

                    btn_guardar.Visible = true;

                    tb_tabla_resto_campos.Visible = true;

                    hidden_id_juez_editar.Value = juez.juez_id.ToString();

                    string script = "<script language=\"javascript\"  type=\"text/javascript\">$(document).ready(function() { $('#agregar_juez').modal('show')});</script>";
                    ScriptManager.RegisterStartupScript(Page, this.GetType(), "ShowPopUp", script, false);
                }
            }
        }
コード例 #10
0
ファイル: admin_mesas.aspx.cs プロジェクト: jfberton/HabProf
        protected void btn_ver_ServerClick(object sender, EventArgs e)
        {
            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                int  id_mesa = Convert.ToInt32(((Button)sender).CommandArgument);
                Mesa mesa    = cxt.Mesas.FirstOrDefault(pp => pp.mesa_id == id_mesa);
                if (mesa != null)
                {
                    lbl_estado.Text         = mesa.mesa_estado;
                    lbl_carrera.Text        = mesa.mesa_codigo_carrera.ToString();
                    lbl_plan.Text           = mesa.mesa_codigo_plan.ToString();
                    lbl_materia.Text        = mesa.mesa_codigo_materia.ToString();
                    lbl_ver_mesa_fecha.Text = mesa.mesa_fecha.ToShortDateString();

                    var jurados = (from j in mesa.Jueces
                                   select new
                    {
                        juez_persona_nomyap = j.Persona.persona_nomyap,
                        juez_persona_dni = j.Persona.persona_dni,
                        juez_persona_email = j.Persona.persona_email
                    }).ToList();
                    var tesinas = (from t in mesa.Tesinas select t).ToList();

                    //si esta en estado generada debo eliminar las notas que pueden llegar a tener las tesinas, no se porque pero pasó
                    if (mesa.mesa_estado == "Generada")
                    {
                        foreach (Tesina t in mesa.Tesinas)
                        {
                            t.tesina_calificacion            = null;
                            t.tesina_calificacion_director   = null;
                            t.tesina_calificacion_codirector = null;

                            cxt.SaveChanges();
                        }
                    }

                    var tesinas_para_grilla = (from t in tesinas
                                               select new
                    {
                        tesina_tema = t.tesina_tema,
                        tesina_director = t.Director.Persona.persona_nomyap,
                        tesina_tesista = t.Tesista.Persona.persona_nomyap,
                        tesina_codirector = t.Codirector == null ? "-" : t.Codirector.Persona.persona_nomyap,
                        tesina_nota = t.tesina_calificacion,
                        tesina_nota_director = t.tesina_calificacion_director,
                        tesina_nota_codirector = t.tesina_calificacion_codirector == null ? "-" : t.tesina_calificacion_codirector.ToString()
                    });

                    gv_jurados.DataSource = jurados;
                    gv_jurados.DataBind();

                    gv_tesinas.DataSource = tesinas_para_grilla;
                    gv_tesinas.DataBind();

                    string script = "<script language=\"javascript\"  type=\"text/javascript\">$(document).ready(function() { $('#panel_ver_mesa').modal('show')});</script>";
                    ScriptManager.RegisterStartupScript(Page, this.GetType(), "ShowPopUp", script, false);
                }
            }
        }
コード例 #11
0
ファイル: admin_mesas.aspx.cs プロジェクト: jfberton/HabProf
        protected void btn_imprimir_derivacion_biblioteca_Click(object sender, EventArgs e)
        {
            int id_mesa = Convert.ToInt32(((Button)sender).CommandArgument);

            bool mesa_cerrada = false;

            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                Mesa mesa = cxt.Mesas.FirstOrDefault(pp => pp.mesa_id == id_mesa);

                if (mesa != null && mesa.mesa_estado == "Cerrada")
                {
                    Reportes.reporte_mesa ds = new Reportes.reporte_mesa();

                    Reportes.reporte_mesa.t_mesaRow mr = ds.t_mesa.Newt_mesaRow();
                    mr.mesa_fecha          = mesa.mesa_fecha;
                    mr.mesa_estado         = mesa.mesa_estado;
                    mr.mesa_codigo_carrera = mesa.mesa_codigo_carrera.ToString();
                    mr.mesa_codigo_materia = mesa.mesa_codigo_materia.ToString();
                    mr.mesa_codigo_plan    = mesa.mesa_codigo_plan.ToString();
                    mr.mesa_licenciatura   = mesa.Tesinas.First().Tesista.Persona.Licenciatura.licenciatura_nombre;
                    ds.t_mesa.Addt_mesaRow(mr);

                    foreach (Tesina tesina in mesa.Tesinas)
                    {
                        if (tesina.tesina_calificacion >= 6)
                        {
                            Reportes.reporte_mesa.t_tesinasRow tr = ds.t_tesinas.Newt_tesinasRow();
                            tr.tesina_titulo                  = tesina.tesina_tema;
                            tr.tesina_tesista                 = tesina.Tesista.Persona.persona_nomyap;
                            tr.tesina_director                = tesina.Director.Persona.persona_nomyap;
                            tr.tesina_calificacion            = tesina.tesina_calificacion.ToString();
                            tr.tesina_calificacion_director   = tesina.tesina_calificacion_director.ToString();
                            tr.tesina_calificacion_codirector = tesina.Codirector != null?tesina.tesina_calificacion_codirector.ToString() : "0";

                            tr.tesista_legajo = tesina.Tesista.tesista_legajo;
                            ds.t_tesinas.Addt_tesinasRow(tr);
                        }
                    }
                    mesa_cerrada = true;

                    Session["ds_mesa"] = ds;
                }
            }

            if (mesa_cerrada)
            {
                RenderReport_derivacion_tesinas_aprobadas_a_biblioteca();
            }
            else
            {
                MessageBox.Show(this, "No se pueden derivar los las tesinas mientras la mesa no este cerrada.", MessageBox.Tipo_MessageBox.Danger);
            }
        }
コード例 #12
0
        protected void cv_correo_duplicado_ServerValidate(object source, ServerValidateEventArgs args)
        {
            int  dni      = Convert.ToInt32(tb_dni_tesista.Value);
            bool correcto = true;

            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                correcto = cxt.Personas.FirstOrDefault(pp => pp.persona_email == tb_email.Value && pp.persona_dni != dni) == null;
            }

            args.IsValid = correcto;
        }
コード例 #13
0
        protected void cv_dni_duplicado_ServerValidate(object source, ServerValidateEventArgs args)
        {
            string[] nombre_cv = ((CustomValidator)source).ClientID.Split('_');
            int      rowNumber = Convert.ToInt32(nombre_cv[nombre_cv.Count() - 1]);
            int      dni       = Convert.ToInt32(((HtmlInputText)gv_directores.Rows[rowNumber].Cells[0].Controls[1]).Value);

            bool correcto = true;

            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                correcto = cxt.Directores.FirstOrDefault(tt => tt.Persona.persona_dni == dni) == null;
            }

            args.IsValid = correcto;
        }
コード例 #14
0
 protected void Page_Load(object sender, EventArgs e)
 {
     if (!IsPostBack)
     {
         using (HabProfDBContainer cxt = new HabProfDBContainer())
         {
             //Persona p = Session["UsuarioLogueado"] as Persona;
             //Administrador admin = cxt.Administradores.FirstOrDefault(pp => pp.Persona.persona_id == p.persona_id);
             //if (admin == null)
             //{
             //    MessageBox.Show(this, "Usted no tiene permiso para acceder a esta página", MessageBox.Tipo_MessageBox.Danger, "Atención", "~/default.aspx");
             //}
         }
     }
 }
コード例 #15
0
ファイル: admin_mesas.aspx.cs プロジェクト: jfberton/HabProf
        protected void btn_imprimir_Click(object sender, EventArgs e)
        {
            int id_mesa = Convert.ToInt32(((Button)sender).CommandArgument);

            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                Mesa mesa = cxt.Mesas.FirstOrDefault(pp => pp.mesa_id == id_mesa);

                Reportes.reporte_mesa ds = new Reportes.reporte_mesa();

                Reportes.reporte_mesa.t_mesaRow mr = ds.t_mesa.Newt_mesaRow();
                mr.mesa_fecha          = mesa.mesa_fecha;
                mr.mesa_estado         = mesa.mesa_estado;
                mr.mesa_codigo_carrera = mesa.mesa_codigo_carrera.ToString();
                mr.mesa_codigo_materia = mesa.mesa_codigo_materia.ToString();
                mr.mesa_codigo_plan    = mesa.mesa_codigo_plan.ToString();
                mr.mesa_licenciatura   = mesa.Tesinas.First().Tesista.Persona.Licenciatura.licenciatura_nombre;
                ds.t_mesa.Addt_mesaRow(mr);

                foreach (Jurado jurado in mesa.Jueces)
                {
                    Reportes.reporte_mesa.t_juradosRow jr = ds.t_jurados.Newt_juradosRow();
                    jr.jurado_dni    = jurado.Persona.persona_dni.ToString();
                    jr.jurado_nombre = jurado.Persona.persona_nomyap;
                    jr.jurado_mail   = jurado.Persona.persona_email;

                    ds.t_jurados.Addt_juradosRow(jr);
                }

                foreach (Tesina tesina in mesa.Tesinas)
                {
                    Reportes.reporte_mesa.t_tesinasRow tr = ds.t_tesinas.Newt_tesinasRow();
                    tr.tesina_titulo                  = tesina.tesina_tema;
                    tr.tesina_tesista                 = tesina.Tesista.Persona.persona_nomyap;
                    tr.tesina_director                = tesina.Director.Persona.persona_nomyap;
                    tr.tesina_calificacion            = tesina.tesina_calificacion.ToString();
                    tr.tesina_calificacion_director   = tesina.tesina_calificacion_director.ToString();
                    tr.tesina_calificacion_codirector = tesina.Codirector != null?tesina.tesina_calificacion_codirector.ToString() : "0";

                    tr.tesista_legajo = tesina.Tesista.tesista_legajo;
                    ds.t_tesinas.Addt_tesinasRow(tr);
                }

                Session["ds_mesa"] = ds;
            }

            RenderReport_mesa();
        }
コード例 #16
0
        protected void btn_habilitar_tesista_ServerClick(object sender, EventArgs e)
        {
            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                int     id_tesista = Convert.ToInt32(((HtmlButton)sender).Attributes["data-id"]);
                Tesista tesista    = cxt.Tesistas.FirstOrDefault(pp => pp.tesista_id == id_tesista);
                if (tesista != null)
                {
                    tesista.tesista_fecha_baja = null;
                    cxt.SaveChanges();
                    MessageBox.Show(this, "Se habilitó correctamente al tesista " + tesista.Persona.persona_nomyap, MessageBox.Tipo_MessageBox.Success);
                }
            }

            ObtenerTesistas();
        }
コード例 #17
0
        protected void btn_ver_ServerClick1(object sender, EventArgs e)
        {
            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                int id_tesista = Convert.ToInt32(((HtmlButton)sender).Attributes["data-id"]);

                Tesista tesista = cxt.Tesistas.FirstOrDefault(pp => pp.tesista_id == id_tesista);
                if (tesista != null)
                {
                    lbl_sin_tesina.Visible         = false;
                    lbl_ver_tesista_dni.Text       = tesista.Persona.persona_dni.ToString();
                    lbl_ver_tesista_domicilio.Text = tesista.Persona.persona_domicilio;
                    lbl_ver_tesista_email.Text     = tesista.Persona.persona_email;
                    lbl_ver_tesista_legajo.Text    = tesista.tesista_legajo;
                    lbl_ver_tesista_nomyap.Text    = tesista.Persona.persona_nomyap;
                    lbl_ver_tesista_sede.Text      = tesista.tesista_sede;
                    lbl_ver_tesista_telefono.Text  = tesista.Persona.persona_telefono;

                    var tesinas             = (from t in tesista.Tesina select t).ToList();
                    var tesinas_para_grilla = (from t in tesinas
                                               select new
                    {
                        tesina_tema = t.tesina_tema,
                        tesina_director = t.Director.Persona.persona_nomyap,
                        tesina_tesista = t.Tesista.Persona.persona_nomyap,
                        tesina_codirector = t.Codirector == null ? "-" : t.Codirector.Persona.persona_nomyap,
                        tesina_nota = t.tesina_calificacion,
                        tesina_nota_director = t.tesina_calificacion_director,
                        tesina_nota_codirector = t.tesina_calificacion_codirector == null ? "-" : t.tesina_calificacion_codirector.ToString()
                    }).ToList();

                    if (tesinas_para_grilla.Count > 0)
                    {
                        gv_tesina.DataSource = tesinas_para_grilla;
                        gv_tesina.DataBind();
                    }
                    else
                    {
                        gv_tesina.DataSource = null;
                        gv_tesina.DataBind();
                    }

                    string script = "<script language=\"javascript\"  type=\"text/javascript\">$(document).ready(function() { $('#panel_ver_tesista').modal('show')});</script>";
                    ScriptManager.RegisterStartupScript(Page, this.GetType(), "ShowPopUp", script, false);
                }
            }
        }
コード例 #18
0
        protected void changeStyleButton_Click(object sender, EventArgs e)
        {
            string estilo = ((LinkButton)sender).Text;

            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                Persona admin = Session["UsuarioLogueado"] as Persona;
                admin.persona_estilo = estilo;
                Persona admin_cxt = cxt.Personas.FirstOrDefault(pp => pp.persona_id == admin.persona_id);
                //actualizo el estilo
                admin_cxt.persona_estilo = estilo;
                cxt.SaveChanges();
                //actualizo el usuario de la session
                Session["UsuarioLogueado"] = admin_cxt;
                ((Aplicativo.Site1) this.Master).RefrescarEstilo();
            }
        }
コード例 #19
0
ファイル: admin_mesas.aspx.cs プロジェクト: jfberton/HabProf
        protected void btn_cerrar_mesa_ServerClick(object sender, EventArgs e)
        {
            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                int id_mesa = Convert.ToInt32(((Button)sender).CommandArgument);

                Mesa mesa = cxt.Mesas.FirstOrDefault(pp => pp.mesa_id == id_mesa);
                if (mesa != null && mesa.mesa_estado == "Generada")
                {
                    lbl_estado.Text             = mesa.mesa_estado;
                    lbl_ver_mesa_fecha.Text     = mesa.mesa_fecha.ToShortDateString();
                    hidden_cerrar_mesa_id.Value = mesa.mesa_id.ToString();

                    string jurados = string.Empty;
                    foreach (Jurado jurado in mesa.Jueces)
                    {
                        jurados = jurados + jurado.Persona.persona_nomyap + ",";
                    }

                    lbl_cerrar_mesa_jurado.Text = jurados;

                    var tesinas = (from t in mesa.Tesinas
                                   select new
                    {
                        tesina_id = t.tesina_id,
                        tesina_tema = t.tesina_tema,
                        tesina_director = t.Director.Persona.persona_nomyap,
                        tesina_tesista = t.Tesista.Persona.persona_nomyap,
                        tesina_nota = t.tesina_calificacion,
                        tesina_nota_director = t.tesina_calificacion_director,
                        tiene_codirector = t.codirector_id != null
                    });

                    gv_cerrar_mesa_tesinas.DataSource = tesinas;
                    gv_cerrar_mesa_tesinas.DataBind();

                    string script = "<script language=\"javascript\"  type=\"text/javascript\">$(document).ready(function() { $('#panel_cerrar_mesa').modal('show')});</script>";
                    ScriptManager.RegisterStartupScript(Page, this.GetType(), "ShowPopUp", script, false);
                }
                else
                {
                    MessageBox.Show(this, "Solo se pueden cerrar mesas en estado Generadas", MessageBox.Tipo_MessageBox.Danger);
                }
            }
        }
コード例 #20
0
ファイル: admin_mesa.aspx.cs プロジェクト: jfberton/HabProf
        private void CargarTesinas()
        {
            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                List <string> id_tesinas          = hidden_tesinas_seleccionadas.Value.Split(',').ToList();
                List <int>    items_seleccionados = new List <int>();
                foreach (string id in id_tesinas)
                {
                    int id_tesina;
                    if (int.TryParse(id, out id_tesina))
                    {
                        items_seleccionados.Add(id_tesina);
                    }
                }

                Estado_tesina et = cxt.Estados_tesinas.FirstOrDefault(eett => eett.estado_tesina_estado == "Lista para presentar");

                var tesinas = (from t in cxt.Tesinas
                               where t.estado_tesis_id == et.estado_tesina_id && t.Tesista.tesista_baja_definitiva == null
                               select t).ToList();

                var tesinas_sin_baja = (from t in tesinas
                                        select new item_tesina
                {
                    tesina_id = t.tesina_id,
                    tesina_tema = t.tesina_tema,
                    tesina_descripcion = t.tesina_descripcion,
                    tesina_director = t.Director.Persona.persona_nomyap,
                    tesina_tesista = t.Tesista.Persona.persona_nomyap,
                    seleccionada = (items_seleccionados.IndexOf(t.tesina_id) > -1)
                }).ToList();

                if (tesinas_sin_baja.Count() > 0)
                {
                    gv_seleccionar_tesinas.DataSource = tesinas_sin_baja;
                    gv_seleccionar_tesinas.DataBind();
                }
                else
                {
                    gv_seleccionar_tesinas.DataSource = null;
                    gv_seleccionar_tesinas.DataBind();
                }
            }
        }
コード例 #21
0
ファイル: admin_mesas.aspx.cs プロジェクト: jfberton/HabProf
        protected void btn_imprimir_certificado_jurados_Click(object sender, EventArgs e)
        {
            int  id_mesa      = Convert.ToInt32(((Button)sender).CommandArgument);
            bool mesa_cerrada = false;

            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                Mesa mesa = cxt.Mesas.FirstOrDefault(pp => pp.mesa_id == id_mesa);

                if (mesa.mesa_estado == "Cerrada")
                {
                    Reportes.reporte_jurado ds = new Reportes.reporte_jurado();

                    foreach (Jurado jurado in mesa.Jueces)
                    {
                        foreach (Tesina tesina in mesa.Tesinas)
                        {
                            Reportes.reporte_jurado.t_juradoRow jr = ds.t_jurado.Newt_juradoRow();
                            jr.jurado_id  = jurado.juez_id;
                            jr.jurado_dni = jurado.Persona.persona_dni.ToString();
                            jr.jurado_licenciatura_nombre = jurado.Persona.Licenciatura.licenciatura_nombre;
                            jr.jurado_mesa_fecha          = mesa.mesa_fecha.ToShortDateString();
                            jr.jurado_nombre         = jurado.Persona.persona_nomyap;
                            jr.jurado_tesina_tema    = tesina.tesina_tema;
                            jr.jurado_tesina_tesista = tesina.Tesista.Persona.persona_nomyap;

                            ds.t_jurado.Rows.Add(jr);
                        }
                    }

                    mesa_cerrada          = true;
                    Session["ds_jurados"] = ds;
                }
            }

            if (mesa_cerrada)
            {
                RenderReport_jurados();
            }
            else
            {
                MessageBox.Show(this, "No se pueden imprimir los certificados mientras la mesa no este cerrada.", MessageBox.Tipo_MessageBox.Warning);
            }
        }
コード例 #22
0
        protected void btn_editar_ServerClick(object sender, EventArgs e)
        {
            using (var cxt = new HabProfDBContainer())
            {
                string id_tesina = ((HtmlButton)sender).Attributes["data-id"];

                int    id_tesina_int = Convert.ToInt32(id_tesina);
                Tesina t             = cxt.Tesinas.FirstOrDefault(tt => tt.tesina_id == id_tesina_int);

                if (t.Estado.estado_tesina_estado == "Iniciada")
                {
                    Response.Redirect("~/Aplicativo/admin_tesina.aspx?t=" + id_tesina);
                }
                else
                {
                    MessageBox.Show(this, "No se puede editar la tesina en un estado distinto a Iniciada", MessageBox.Tipo_MessageBox.Danger);
                }
            }
        }
コード例 #23
0
        protected void btn_eliminacion_definitiva_Click(object sender, EventArgs e)
        {
            int id_tesista = Convert.ToInt32(id_item_por_eliminar_definitiva.Value);

            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                try
                {
                    Tesista tesista = cxt.Tesistas.FirstOrDefault(pp => pp.tesista_id == id_tesista);

                    if (tesista.Tesina != null)
                    {
                        MessageBox.Show(this, "No se puede eliminar un tesista que posee tesina asociada!");
                    }
                    else
                    {
                        tesista.tesista_baja_definitiva = DateTime.Today;
                        cxt.SaveChanges();
                        MessageBox.Show(this, "Se ha eliminado el tesista", MessageBox.Tipo_MessageBox.Success);
                    }
                }
                catch (System.Data.Entity.Validation.DbEntityValidationException dbEx)
                {
                    Exception raise = dbEx;
                    foreach (var validationErrors in dbEx.EntityValidationErrors)
                    {
                        foreach (var validationError in validationErrors.ValidationErrors)
                        {
                            string message = string.Format("{0}:{1}",
                                                           validationErrors.Entry.Entity.ToString(),
                                                           validationError.ErrorMessage);
                            // raise a new exception nesting
                            // the current instance as InnerException
                            raise = new InvalidOperationException(message, raise);
                        }
                    }

                    MessageBox.Show(this, raise.Message, MessageBox.Tipo_MessageBox.Danger, "Ups! ocurrio un error al guardar los cambios");
                }
            }

            ObtenerTesistas();
        }
コード例 #24
0
        protected void btn_ver_ServerClick1(object sender, EventArgs e)
        {
            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                int id_juez = Convert.ToInt32(((HtmlButton)sender).Attributes["data-id"]);

                Jurado juez = cxt.Jueces.FirstOrDefault(pp => pp.juez_id == id_juez);
                if (juez != null)
                {
                    lbl_ver_juez_dni.Text       = juez.Persona.persona_dni.ToString();
                    lbl_ver_juez_domicilio.Text = juez.Persona.persona_domicilio;
                    lbl_ver_juez_email.Text     = juez.Persona.persona_email;
                    lbl_ver_juez_nomyap.Text    = juez.Persona.persona_nomyap;
                    lbl_ver_juez_telefono.Text  = juez.Persona.persona_telefono;

                    string script = "<script language=\"javascript\"  type=\"text/javascript\">$(document).ready(function() { $('#panel_ver_juez').modal('show')});</script>";
                    ScriptManager.RegisterStartupScript(Page, this.GetType(), "ShowPopUp", script, false);
                }
            }
        }
コード例 #25
0
ファイル: admin_mesa.aspx.cs プロジェクト: jfberton/HabProf
        protected void btn_aceptar_seleccion_jurado_Click(object sender, EventArgs e)
        {
            List <item_jurado> items_seleccionados  = new List <item_jurado>();
            string             texto_para_el_hidden = string.Empty;

            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                foreach (GridViewRow fila in gv_seleccionar_jurado.Rows)
                {
                    CheckBox chk = ((CheckBox)fila.Cells[3].Controls[1]);

                    int    jurado_id = Convert.ToInt32(chk.AccessKey);
                    Jurado jurado    = cxt.Jueces.FirstOrDefault(jj => jj.juez_id == jurado_id);
                    if (chk.Checked)
                    {
                        items_seleccionados.Add(new item_jurado()
                        {
                            juez_id             = jurado.juez_id,
                            juez_persona_nomyap = jurado.Persona.persona_nomyap,
                            juez_persona_dni    = jurado.Persona.persona_dni,
                            juez_persona_email  = jurado.Persona.persona_email
                        });

                        texto_para_el_hidden = texto_para_el_hidden + chk.AccessKey + ",";
                    }
                }
            }

            hidden_ids_jueces.Value = texto_para_el_hidden;

            if (items_seleccionados.Count > 0)
            {
                gv_jurados.DataSource = items_seleccionados;
                gv_jurados.DataBind();
            }
            else
            {
                gv_jurados.DataSource = null;
                gv_jurados.DataBind();
            }
        }
コード例 #26
0
ファイル: admin_mesa.aspx.cs プロジェクト: jfberton/HabProf
        protected void chk_seleccionar_tesina_CheckedChanged(object sender, EventArgs e)
        {
            List <string> ids = hidden_tesinas_seleccionadas.Value.Split(',').ToList();
            CheckBox      chk = ((CheckBox)sender);

            if (chk.Checked)
            {
                //agregar tesina al listado
                ids.Add(chk.AccessKey);
            }
            else
            {
                //quitar tesina del listado
                if (ids.IndexOf(chk.AccessKey) >= 0)
                {
                    ids.RemoveAt(ids.IndexOf(chk.AccessKey));
                }
            }

            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                string texto_para_el_label  = string.Empty;
                string texto_para_el_hidden = string.Empty;
                foreach (string str_id_tesina in ids)
                {
                    int id_tesina;
                    if (int.TryParse(str_id_tesina, out id_tesina))
                    {
                        //texto_para_el_label = texto_para_el_label + cxt.Tesinas.FirstOrDefault(tt => tt.tesina_id == id_tesina).tesina_tema + "; ";
                        texto_para_el_hidden = texto_para_el_hidden + id_tesina.ToString() + ",";
                    }
                }

                //lbl_jueces.Text = texto_para_el_label;
                hidden_tesinas_seleccionadas.Value = texto_para_el_hidden;
            }

            string script = "<script language=\"javascript\"  type=\"text/javascript\">$(document).ready(function() { $('#modal_buscar_jurado').modal('show');});</script>";

            ScriptManager.RegisterStartupScript(Page, this.GetType(), "ShowPopUp", script, false);
        }
コード例 #27
0
ファイル: admin_mesa.aspx.cs プロジェクト: jfberton/HabProf
        protected void btn_aceptar_seleccion_tesina_Click(object sender, EventArgs e)
        {
            List <item_tesina> items_seleccionados  = new List <item_tesina>();
            string             texto_para_el_hidden = string.Empty;

            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                foreach (GridViewRow fila in gv_seleccionar_tesinas.Rows)
                {
                    CheckBox chk = ((CheckBox)fila.Cells[3].Controls[1]);
                    if (chk.Checked)
                    {
                        int    tesina_id = Convert.ToInt32(chk.AccessKey);
                        Tesina t         = cxt.Tesinas.FirstOrDefault(tt => tt.tesina_id == tesina_id);
                        items_seleccionados.Add(new item_tesina()
                        {
                            tesina_id       = t.tesina_id,
                            tesina_tema     = t.tesina_tema,
                            tesina_director = t.Director.Persona.persona_nomyap,
                            tesina_tesista  = t.Tesista.Persona.persona_nomyap
                        });

                        texto_para_el_hidden = texto_para_el_hidden + chk.AccessKey + ",";
                    }
                }
            }


            hidden_tesinas_seleccionadas.Value = texto_para_el_hidden;

            if (items_seleccionados.Count > 0)
            {
                gv_tesinas_seleccionadas.DataSource = items_seleccionados;
                gv_tesinas_seleccionadas.DataBind();
            }
            else
            {
                gv_tesinas_seleccionadas.DataSource = null;
                gv_tesinas_seleccionadas.DataBind();
            }
        }
コード例 #28
0
ファイル: admin_mesa.aspx.cs プロジェクト: jfberton/HabProf
        private void CargarJueces()
        {
            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                List <string> id_jueces           = hidden_ids_jueces.Value.Split(',').ToList();
                List <int>    items_seleccionados = new List <int>();
                foreach (string id in id_jueces)
                {
                    int id_juez;
                    if (int.TryParse(id, out id_juez))
                    {
                        items_seleccionados.Add(id_juez);
                    }
                }

                var jueces = (from d in cxt.Jueces
                              where d.juez_fecha_baja == null
                              select d).ToList();

                var jueces_sin_baja = (from d in jueces
                                       select new item_jurado
                {
                    juez_id = d.juez_id,
                    juez_persona_nomyap = d.Persona.persona_nomyap,
                    juez_persona_dni = d.Persona.persona_dni,
                    juez_persona_email = d.Persona.persona_email,
                    seleccionado = (items_seleccionados.IndexOf(d.juez_id) > -1)
                }).ToList();

                if (jueces_sin_baja.Count() > 0)
                {
                    gv_seleccionar_jurado.DataSource = jueces_sin_baja;
                    gv_seleccionar_jurado.DataBind();
                }
                else
                {
                    gv_seleccionar_jurado.DataSource = null;
                    gv_seleccionar_jurado.DataBind();
                }
            }
        }
コード例 #29
0
        protected void btn_ver_ServerClick1(object sender, EventArgs e)
        {
            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                int id_director = Convert.ToInt32(((HtmlButton)sender).Attributes["data-id"]);

                Director director = cxt.Directores.FirstOrDefault(pp => pp.director_id == id_director);
                if (director != null)
                {
                    lbl_ver_director_dni.Text          = director.Persona.persona_dni.ToString();
                    lbl_ver_director_domicilio.Text    = director.Persona.persona_domicilio;
                    lbl_ver_director_email.Text        = director.Persona.persona_email;
                    lbl_ver_director_nomyap.Text       = director.Persona.persona_nomyap;
                    lbl_ver_director_telefono.Text     = director.Persona.persona_telefono;
                    lbl_ver_director_calificacion.Text = director.Calificacion_general.ToString();
                    lbl_ver_director_usuario.Text      = director.Persona.persona_usuario;

                    List <Tesina> tesinas = cxt.Tesinas.Where(tt => tt.director_id == director.director_id).OrderByDescending(tt => tt.tesina_plan_fch_presentacion).ToList();

                    var tesina_para_grilla = (from t in tesinas
                                              select new
                    {
                        tesina_id = t.tesina_id,
                        tesina_tema_completo = t.tesina_tema,
                        tesina_tema_recortado = t.tesina_tema.Substring(0, 40),
                        tesina_plan_fch_presentacion = t.tesina_plan_fch_presentacion,
                        tesinata_nombre = t.Tesista.Persona.persona_nomyap,
                        tesina_estado = t.Estado.estado_tesina_estado
                    }).ToList();


                    lbl_tesinas_director.Text = tesina_para_grilla.Count == 0 ? "El director no participo en ninguna tesina aún.-" : "Tesinas supervisadas y en curso";
                    gv_tesinas.DataSource     = tesina_para_grilla;
                    gv_tesinas.DataBind();

                    string script = "<script language=\"javascript\"  type=\"text/javascript\">$(document).ready(function() { $('#panel_ver_director').modal('show')});</script>";
                    ScriptManager.RegisterStartupScript(Page, this.GetType(), "ShowPopUp", script, false);
                }
            }
        }
コード例 #30
0
ファイル: admin_mesas.aspx.cs プロジェクト: jfberton/HabProf
        protected void cv_calificacion_codirector_ServerValidate(object source, ServerValidateEventArgs args)
        {
            string[] nombre_cv          = ((CustomValidator)source).ClientID.Split('_');
            int      rowNumber          = Convert.ToInt32(nombre_cv[nombre_cv.Count() - 1]);
            TextBox  tb_nota_codirector = ((TextBox)gv_cerrar_mesa_tesinas.Rows[rowNumber].Cells[5].Controls[1]);
            int      tesina_id          = Convert.ToInt32(tb_nota_codirector.AccessKey);

            bool correcto = true;

            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                bool hay_codirector = cxt.Tesinas.FirstOrDefault(tt => tt.tesina_id == tesina_id).Codirector != null;
                int  nota           = 0;

                if (hay_codirector)
                {
                    correcto = tb_nota_codirector.Text.Length > 0;
                    correcto = correcto && int.TryParse(tb_nota_codirector.Text, out nota);
                    correcto = correcto && nota > 0 && nota <= 10;
                }
            }

            args.IsValid = correcto;
        }