protected void dlDisHora_ItemCommand(object source, RepeaterCommandEventArgs e)
        {
            MedicoDao medicoDao = new MedicoDao();

            if (e.CommandName.Equals("R"))
            {
                Agenda agendas = new Agenda();
                agendas = (Agenda)ViewState["Agenda"];
                String      particularidad;
                Label       lbHora = (Label)e.Item.FindControl("lbHora");
                HiddenField Uttrat = (HiddenField)e.Item.FindControl("hdUt");
                Cita        cita   = new Cita();
                Paciente    pac    = new Paciente();
                PacienteDao pacDao = new PacienteDao();
                cita.Utratamiento = Uttrat.Value;
                cita.Horareserva  = lbHora.Text.Substring(0, 5);
                cita.Medico       = agendas.Id_medico;
                cita.Especialidad = agendas.Id_especialidad;
                cita.Rutpac       = (String)ViewState["Rut"];
                cita.Rutsol       = (String)ViewState["Rut"];
                pac             = pacDao.GetPaciente(cita.Rutpac);
                cita.Codorigen  = (String)ViewState["origen"];
                cita.Nompac     = pac.Nombre;
                cita.Apepatpac  = pac.Apellidos;
                cita.Fecreserva = calendar.SelectedDate.ToString("ddMMyyyy");
                cita.Mail       = pac.Email;
                cita.Telefono   = pac.Telefono1;
                HttpContext context = HttpContext.Current;
                String      origen  = (String)ViewState["origen"];
                if (medicoDao.GetParti(agendas.Id_especialidad, agendas.Id_medico.Trim(' '), out particularidad))
                {
                    lbParti.Text        = particularidad;
                    ViewState["Cita"]   = cita;
                    ViewState["Agenda"] = agendas;
                    pnModal.Visible     = true;
                }
                else
                {
                    if (origen.Equals("2"))
                    {
                        Context.Items.Add("Agendas", ViewState["Agendas"]);
                        Context.Items.Add("IdEspecialidad", ViewState["IdEspecialidad"]);
                        Context.Items.Add("Especialidad", ViewState["Especialidad"]);
                        context.Items.Add("Medicos", ViewState["lstMedicos"]);
                    }
                    HiddenField hdMaster = (HiddenField)Master.FindControl("hdToken");
                    context.Items.Add("medico", (Medicos)ViewState["medico"]);
                    context.Items.Add("Fecha", (String)ViewState["Fecha"]);
                    context.Items.Add("Rut", (String)ViewState["Rut"]);
                    context.Items.Add("origen", origen);
                    context.Items.Add("Agenda", agendas);
                    context.Items.Add("Cita", cita);
                    Server.Transfer("Confirmacion.aspx?r=" + hdMaster.Value);
                }
            }
        }
        protected void dlDisHora_ItemCommand(object source, RepeaterCommandEventArgs e)
        {
            MedicoDao medicoDao = new MedicoDao();

            if (e.CommandName.Equals("R"))
            {
                Label       lbHora  = (Label)e.Item.FindControl("lbHora");
                HiddenField Uttrat  = (HiddenField)e.Item.FindControl("hdUt");
                Cita        cita    = new Cita();
                Paciente    pac     = new Paciente();
                PacienteDao pacDao  = new PacienteDao();
                BO.Agenda   agendas = new BO.Agenda();
                agendas = (BO.Agenda)ViewState["Agenda"];
                String particularidad;
                cita.Utratamiento = Uttrat.Value;
                cita.Horareserva  = lbHora.Text.Substring(0, 5);
                cita.Medico       = agendas.Id_medico;
                cita.Especialidad = agendas.Id_especialidad;
                cita.Codorigen    = (String)ViewState["origen"];
                cita.Fecreserva   = calendar.SelectedDate.ToString("ddMMyyyy");
                HttpContext context = HttpContext.Current;
                String      origen  = (String)ViewState["origen"];
                if (medicoDao.GetParti(agendas.Id_especialidad, agendas.Id_medico.Trim(' '), out particularidad))
                {
                    lbParti.Text        = particularidad;
                    ViewState["Cita"]   = cita;
                    ViewState["Agenda"] = agendas;
                    Panel1.Visible      = true;
                    //LinkButton3_ModalPopupExtender.Show();
                }
                else
                {
                    //if (origen.Equals("1"))
                    //{
                    Context.Items.Add("Agendas", ViewState["Agendas"]);
                    Context.Items.Add("IdEspecialidad", ViewState["IdEspecialidad"]);
                    Context.Items.Add("Especialidad", ViewState["Especialidad"]);
                    context.Items.Add("Medicos", ViewState["lstMedicos"]);
                    //}
                    context.Items.Add("medico", (Medicos)ViewState["medico"]);
                    context.Items.Add("Fecha", (String)ViewState["Fecha"]);
                    context.Items.Add("origen", origen);
                    context.Items.Add("Agenda", agendas);
                    context.Items.Add("Cita", cita);
                    Server.Transfer("Confirmacion.aspx");
                }
            }
        }
        protected void DataList2_ItemCommand(object sender, ListViewCommandEventArgs e)
        {
            HttpContext      context     = HttpContext.Current;
            HiddenField      hdId        = (HiddenField)e.Item.FindControl("hdIdMed");
            String           IdMedico    = hdId.Value;
            List <BO.Agenda> lstbusqueda = new List <BO.Agenda>();

            lstbusqueda = (List <BO.Agenda>)ViewState["Agendas"];
            BO.Agenda      agenda     = new BO.Agenda();
            List <Medicos> lstMedicos = new List <Medicos>();

            lstMedicos = (List <Medicos>)ViewState["Medicos"];
            Medicos medico = new Medicos();
            String  particularidad;

            medico = lstMedicos.Find(x => x.IdMedico == IdMedico);
            MedicoDao medDao = new MedicoDao();

            switch (e.CommandName)
            {
            case "ReservaDirecta":
                List <DispoDiaria> lst = new List <DispoDiaria>();
                lst = medDao.GetDisponibilidadDiaria(Convert.ToInt32(IdMedico.TrimEnd(' ')).ToString(), medico.FechaServ.Substring(0, 8), medico.IdEspecialidad);
                Cita cita = new Cita();
                cita.Utratamiento = lst[0].Utratamiento;
                cita.Horareserva  = medico.FechaServ.Substring(8, 4);
                cita.Medico       = IdMedico;
                cita.Especialidad = medico.IdEspecialidad;
                cita.Codorigen    = "1";
                cita.Fecreserva   = medico.FechaServ.Substring(0, 8);
                BO.Agenda agendas = new BO.Agenda();
                agendas.NombreMed    = medico.Value[0].Nombres;
                agendas.Apepat       = medico.Value[0].Apellidos;
                agendas.Especialidad = lbEspecialidad.Text;
                if (medDao.GetParti(medico.IdEspecialidad, medico.IdMedico.Trim(' '), out particularidad))
                {
                    ViewState["IdEspecialidad"] = hdIdEspcialidad.Value;
                    ViewState["Agendas"]        = lstbusqueda;
                    ViewState["medico"]         = medico;
                    ViewState["Agenda"]         = agendas;
                    ViewState["Cita"]           = cita;
                    lbParti.Text  = particularidad;
                    pnPop.Visible = true;
                    //LinkButton3_ModalPopupExtender.Show();
                }
                else
                {
                    Context.Items.Add("IdEspecialidad", hdIdEspcialidad.Value);
                    Context.Items.Add("Agendas", lstbusqueda);
                    Context.Items.Add("Especialidad", lbEspecialidad.Text);
                    context.Items.Add("Medicos", ViewState["lstMedicos"]);
                    context.Items.Add("medico", medico);
                    context.Items.Add("origen", "4a");
                    context.Items.Add("Agenda", agendas);
                    context.Items.Add("Cita", cita);
                    Server.Transfer("Confirmacion.aspx");
                }
                break;

            case "VerAgenda":

                agenda = lstbusqueda.Find(x => x.Id_medico == IdMedico);
                //oMedico = lstMedicos.Find(x => x.IdMedico == IdMedico);
                //oMedicoDao.GetMedico(agenda.RutMed);
                context.Items.Add("IdEspecialidad", hdIdEspcialidad.Value);
                Context.Items.Add("Agendas", lstbusqueda);
                context.Items.Add("Especialidad", lbEspecialidad.Text);
                context.Items.Add("Medicos", ViewState["lstMedicos"]);
                context.Items.Add("Medico", medico);
                context.Items.Add("Rut", ViewState["Rut"]);
                context.Items.Add("Agenda", agenda);
                context.Items.Add("origen", "4");
                Server.Transfer("DetallePublic.aspx");
                break;

            case "VerPerfil":
                agenda = lstbusqueda.Find(x => x.Id_medico == IdMedico);
                //oMedico = oMedicoDao.GetMedico(agenda.RutMed);
                context.Items.Add("IdEspecialidad", hdIdEspcialidad.Value);
                Context.Items.Add("Agendas", lstbusqueda);
                context.Items.Add("Especialidad", lbEspecialidad.Text);
                context.Items.Add("Medicos", ViewState["lstMedicos"]);
                context.Items.Add("Medico", medico);
                context.Items.Add("Agenda", agenda);
                context.Items.Add("origen", "4");
                Server.Transfer("PerfilPublic.aspx");
                break;
            }
        }