Imports DevExpress.Web

Public Class ucMisPostulaciones
    Inherits ucBase

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        RegisterCustomMessage(gridMispostulaciones)
        If Not IsPostBack Then
            ObjectMisPostulaciones.SelectParameters("idUsuario").DefaultValue = CInt(Page.User.Identity.Name)
            gridMispostulaciones.DataBind()
            If gridMispostulaciones.VisibleRowCount > 0 Then gridMispostulaciones.DetailRows.ExpandRow(0)
        End If
    End Sub

    Protected Sub gridMispostulaciones_HtmlDataCellPrepared(sender As Object, e As DevExpress.Web.ASPxGridViewTableDataCellEventArgs) Handles gridMispostulaciones.HtmlDataCellPrepared
        If e.DataColumn.FieldName = "idEstadoConcursoPostulante" Then
            Select Case Convert.ToInt32(e.CellValue)
                Case 2, 3, 4
                    e.Cell.BackColor = System.Drawing.Color.FromArgb(&H99, &H0, &H0)
                    e.Cell.ForeColor = Drawing.Color.White
                Case 5
                    e.Cell.BackColor = System.Drawing.Color.LightGreen
                Case Else
                    Exit Select
            End Select
        End If
    End Sub

    Protected Sub gridMispostulaciones_CustomButtonCallback(sender As Object, e As DevExpress.Web.ASPxGridViewCustomButtonCallbackEventArgs) Handles gridMispostulaciones.CustomButtonCallback
        'PROCESO PARA ACTIVAR / DESACTIVAR USUARIO
        If (e.ButtonID = "btnBaja") Then
            Dim oConcursoPostulante As New ConcursoPostulanteBusinessObject(CInt(gridMispostulaciones.GetRowValues(e.VisibleIndex, "idConcursoPostulante")))
            If oConcursoPostulante.Entity.idEstadoConcursoPostulante = 3 Or oConcursoPostulante.Entity.idEstadoConcursoPostulante = 4 Then
                CustomMessage("No puede darse de baja una vez calificado", "Mensaje", gridMispostulaciones)
            ElseIf oConcursoPostulante.Entity.idEstadoConcursoPostulante = 2 Then
                CustomMessage("Usted ya no participa en este Concurso", "Mensaje", gridMispostulaciones)
            Else
                oConcursoPostulante.Entity.idEstadoConcursoPostulante = 2
                oConcursoPostulante.Entity.Calificado = True
                Dim msg As MSG = oConcursoPostulante.SaveChanges()
                If msg.EventType = dGen.Library.Entity.MSG.MsgType.Success Then
                    gridMispostulaciones.DataBind()
                End If
            End If


        End If
    End Sub

    Protected Sub gridComentarios_BeforePerformDataSelect(sender As Object, e As EventArgs)
        Session("idConcursoPostulante") = (TryCast(sender, ASPxGridView)).GetMasterRowKeyValue()
    End Sub


End Class