protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { // Se busca el curso que se desea modificar si lo hay (querystring). int cCurso = obtener_curso_querystring(); CSEDataSet.CursoDataTable dt = new CSEDataSet.CursoDataTable(); CursoTableAdapter adapter = new CursoTableAdapter(); CSEDataSet.CursoRow row = null; adapter.FillBycCurso(dt, cCurso); if (dt.Count > 0) { row = dt[0]; txt_nombre.Text = row.xCurso; ddl_tipo.SelectedValue = row.cTipoCurso.ToString(); txt_descripcion.Text = row.xDescripcion; txt_finicio.Text = row.IsfInicioNull()?"":row.fInicio; //row.fInicio.ToShortDateString(); txt_duracion.Text = row.xDuracion; txt_inscripcion.Text = row.xInscripcion; txt_inversion.Text = row.xInversion; txt_horario.Text = row.xHorario; txt_requisitos.Text = row.xRequisitos; btn_agregar.Text = "Modificar"; } } }
protected void rpt_cursos_ItemCommand(object source, RepeaterCommandEventArgs e) { // Se busca el curso que se esta modificando int cCurso = 0; Int32.TryParse(e.CommandArgument.ToString(), out cCurso); CSEDataSet.CursoDataTable dt = new CSEDataSet.CursoDataTable(); CursoTableAdapter adapter = new CursoTableAdapter(); CSEDataSet.CursoRow row = null; if (adapter.FillBycCurso(dt, cCurso) > 0) { String mensaje = ""; row = dt[0]; // Se realiza el comando llamado if (e.CommandName == "Publicar") { row.iPublicado = !row.iPublicado; adapter.Update(row); if (row.iPublicado) { mensaje = "Se ha publicado el curso especificado"; } else { mensaje = "El curso especificado ya no es público"; } } else if (e.CommandName == "Subir") { subir_curso(cCurso); mensaje = "Se ha subido de posición el curso especificado"; } else if (e.CommandName == "Bajar") { bajar_curso(cCurso); mensaje = "Se ha bajado de posición el curso especificado"; } else if (e.CommandName == "Eliminar") { adapter.Delete(cCurso); mensaje = "Se ha eliminado el curso especificado"; } if (mensaje != "") { Admin_MasterPage admin_master = (Admin_MasterPage)Master; ((Label)admin_master.FindControl("lbl_mensaje")).Text = mensaje; ((Label)admin_master.FindControl("lbl_mensaje")).Visible = true; } } obtener_cursos(); }
protected void bajar_curso(int cCurso) { CSEDataSet.CursoDataTable dt = new CSEDataSet.CursoDataTable(); CSEDataSet.CursoDataTable dt_aux = new CSEDataSet.CursoDataTable(); CursoTableAdapter adapter = new CursoTableAdapter(); CSEDataSet.CursoRow row_actual = null; CSEDataSet.CursoRow row_aux = null; int cTipoCurso = 0; int nPosicion = 0; // Se busca el curso que se desea modificar if (adapter.FillBycCurso(dt, cCurso) > 0) { row_actual = dt[0]; cTipoCurso = row_actual.cTipoCurso; nPosicion = row_actual.nPosicion; // Se busca el curso (del mismo tipo) inmediato de abajo if (adapter.FillBycTipoCurso_nPosicion(dt_aux, cTipoCurso, nPosicion - 1) > 0) { row_aux = dt_aux[0]; // Se cambia las posiciones de ambos row_actual.nPosicion = row_actual.nPosicion - 1; row_aux.nPosicion = row_aux.nPosicion + 1; adapter.Update(row_actual); adapter.Update(row_aux); } rpt_cursos_petr.DataBind(); rpt_cursos_comp.DataBind(); rpt_cursos_cont.DataBind(); rpt_cursos_plan.DataBind(); rpt_cursos_otr.DataBind(); } }
protected String Agregar_etiqueta(Object cCurso) { int _cCurso = 0; String etiqueta = ""; CSEDataSetTableAdapters.CursoTableAdapter adapter = new CSEDataSetTableAdapters.CursoTableAdapter(); CSEDataSet.CursoDataTable dt = new CSEDataSet.CursoDataTable(); CSEDataSet.CursoRow row = null; // Se obtiene la diferencia en dias desde la ultima modificacion para mostrar una etiqueta. if (Int32.TryParse(cCurso.ToString(), out _cCurso)) { if (adapter.FillBycCurso(dt, _cCurso) > 0) { row = dt[0]; double dias_creacion = DateTime.Now.Subtract(row.fCreacion).TotalDays; double dias_modif = DateTime.Now.Subtract(row.fUltModificacion).TotalDays; // Se verifica si es una nueva publicacion o una nueva modificacion if (dias_creacion <= 4) { etiqueta = "<div class='curso_nuevo'></div>"; } if (dias_modif <= 4) { if (dias_creacion != dias_modif) { etiqueta = "<div class='curso_modif'></div>"; } } } } return(etiqueta); }
protected Boolean modificar_curso(int cCurso, out String mensaje) { CSEDataSet.CursoDataTable dt = new CSEDataSet.CursoDataTable(); CursoTableAdapter adapter = new CursoTableAdapter(); CSEDataSet.CursoRow row = null; // Se busca el curso a modificar if (adapter.FillBycCurso(dt, cCurso) > 0) { row = dt[0]; // Se verifican los datos. mensaje = ""; int _tipo_curso = 0; //DateTime? _finicio = null; DateTime _finicio_; if (String.IsNullOrEmpty(txt_nombre.Text)) { mensaje = "Por favor ingrese un nombre de curso válido"; return false; } if (!Int32.TryParse(ddl_tipo.SelectedValue, out _tipo_curso)) { mensaje = "Por favor ingrese un tipo de curso válido"; return false; } //if (!DateTime.TryParse(txt_finicio.Text, out _finicio_)) //{ // if (txt_finicio.Text != "") // { // mensaje = "Por favor ingrese una fecha de inicio válida"; // return false; // } //} //else //{ // _finicio = _finicio_; //} // Se verifica si se cambio el tipo de curso int _posicion = row.nPosicion; if (row.cTipoCurso != _tipo_curso) { // Se debe busca una posicion valida (ultimo de ese tipo de curso). CSEDataSet.CursoDataTable _dt = new CSEDataSet.CursoDataTable(); int count = adapter.FillBycTipoCurso_Ultimo(_dt, _tipo_curso); if (count >= 0) { if (count == 0) _posicion = 0; else _posicion = _dt[0].nPosicion + 1; } } // Se obtienen los datos. row.xCurso = txt_nombre.Text; row.cTipoCurso = _tipo_curso; row.xDescripcion = txt_descripcion.Text; row.fInicio = txt_finicio.Text; row.xDuracion = txt_duracion.Text; row.xInscripcion = txt_inscripcion.Text; row.xInversion = txt_inversion.Text; row.xHorario = txt_horario.Text; row.xRequisitos = txt_requisitos.Text; row.nPosicion = _posicion; row.fUltModificacion = DateTime.Now; // Se intenta modificar en la BD. if (adapter.Update(row) > 0) { return true; } } else { mensaje = "El curso que desea modificar no existe, por favor verifique los datos"; } return false; }