示例#1
0
        protected void EnviarBtn_Click(object sender, EventArgs e)
        {
            if (tbAwardTitle.Text.Length > 0 && tbAwardDescription.Text.Length > 0)
            {
                String sNombreImagen = UploadImage();

                // Crear Premio
                if (sNombreImagen != "Error")
                {
                    PI_BA_Premio premio = new PI_BA_Premio();
                    premio.cvePremio       = Guid.NewGuid().ToString();
                    premio.Nombre          = tbAwardTitle.Text;
                    premio.Descripcion     = tbAwardDescription.Text;
                    premio.NombreImagen    = sNombreImagen;
                    premio.UsuarioCreacion = Session[StringValues.CorreoSesion].ToString();
                    premio.UsuarioEdicion  = Session[StringValues.CorreoSesion].ToString();
                    premio.FechaCreacion   = DateTime.Now;
                    premio.FechaEdicion    = DateTime.Now;
                    ConvocatoriaService.CreatePremio(premio);

                    ResetFields();
                    Response.Redirect("AdministraPremios.aspx", false);
                }
            }
        }
示例#2
0
        private void CrearFormulario(String sCategoriaID, PI_BA_Premio premio, PI_BA_Categoria categoria)
        {
            litTituloPremio.Text    = "Premio " + premio.Nombre;
            litTituloCategoria.Text = "Categoría: " + categoria.Nombre;

            // obtener lista de preguntas y respuestas para la aplicacion
            var preguntas = AplicacionService.GetFormularioByCategoria(sCategoriaID);

            if (preguntas != null)
            {
                short iNumber = 0;
                foreach (var pregunta in preguntas)
                {
                    Panel panel = new Panel();
                    panel.CssClass = "question-box";

                    LiteralControl lcPregunta = new LiteralControl("<h5> <strong>" + (iNumber + 1) + ". " + pregunta.Texto + "</strong> </h5>");
                    panel.Controls.Add(lcPregunta);

                    var      respuesta = AplicacionService.GetRespuestaByPreguntaAndAplicacion(pregunta.cvePregunta, cveAplicacion);
                    string[] lines     = respuesta.Valor.Split(new string[] { Environment.NewLine }, StringSplitOptions.None);
                    for (int i = 0; i < lines.Length; i++)
                    {
                        LiteralControl lcRespuesta = new LiteralControl("<h5>" + lines[i] + "</h5>");
                        panel.Controls.Add(lcRespuesta);
                    }

                    PanelFormulario.Controls.Add(panel);
                    iNumber++;
                }
            }
        }
示例#3
0
        private bool CheckExistenceInList(PI_BA_Premio premioId, List <CategoriasPendientes> ctgPendientes)
        {
            foreach (var ctg in ctgPendientes)
            {
                if (ctg.pPremio.cvePremio.Equals(premioId.cvePremio))
                {
                    return(true);
                }
            }

            return(false);
        }
示例#4
0
        private void LoadCategories(PI_BA_Premio premio, PI_BA_Convocatoria convocatoria)
        {
            litTituloPremio.Text           = premio.Nombre;
            TituloNuevaConvocatoriaTB.Text = convocatoria.TituloConvocatoria;

            String fInicio    = "'" + FormatearStringFecha(convocatoria.FechaInicio.ToString()) + "' ,";
            String fFin       = "'" + FormatearStringFecha(convocatoria.FechaFin.ToString()) + "' ,";
            String fVeredicto = "'" + FormatearStringFecha(convocatoria.FechaVeredicto.ToString()) + "'";

            ClientScript.RegisterStartupScript(GetType(), "sD", "setDates(" + fInicio + fFin + fVeredicto + ");", true);

            // Mensaje si pude editar los datos del premio
            switch (Request.QueryString["s"])
            {
            case "success":
                MasterPage.ShowMessage("Aviso", "Los cambios fueron realizados con éxito.");
                break;

            case "failed":
                MasterPage.ShowMessage("Error", "El servidor encontró un error al procesar la solicitud.");
                break;
            }

            var categorias = ConvocatoriaService.GetCategoriasByConvocatoria(convocatoria.cveConvocatoria);
            int iCounter   = 0;

            foreach (var c in categorias)
            {
                // Div encargado del responsivo
                Panel pCol = new Panel();
                pCol.CssClass = "col-md-4 item-list text-center";

                // Div encargado de la caja de categoria
                Panel  pItem  = new Panel();
                string sColor = ltColors[iCounter % ltColors.Count];
                pItem.CssClass = "create-item item-description-fix";
                pItem.Style.Add("background-color", sColor);

                // h5 encargado de mostrar el nombre de la categoria
                LiteralControl lcNombreCategoria = new LiteralControl("<h5 class=\"item-description\"> " + c.Nombre + "</h5>");

                pItem.Controls.Add(lcNombreCategoria);
                pCol.Controls.Add(pItem);

                String sFormaID = AplicacionService.GetFormByCategoria(c.cveCategoria).cveForma;
                categoryList.Controls.Add(new LiteralControl("<a href=AdministraFormulario.aspx?p=" + sFormaID + ">"));
                categoryList.Controls.Add(pCol);
                categoryList.Controls.Add(new LiteralControl("</a>"));

                iCounter++;
            }
        }
示例#5
0
 public static void CreatePremio(PI_BA_Premio pr)
 {
     using (var dbContext = new wPremiosInstitucionalesdbEntities())
     {
         try
         {
             dbContext.AddPremio(pr.cvePremio, pr.Nombre, pr.NombreImagen, pr.Descripcion, pr.FechaCreacion, pr.UsuarioCreacion, pr.FechaEdicion, pr.UsuarioEdicion);
             dbContext.SaveChanges();
         }
         catch (Exception Ex)
         {
             Console.WriteLine("Catched Exception: " + Ex.Message + Environment.NewLine);
         }
     }
 }
示例#6
0
        protected void LoadInfo(string formaID, PI_BA_Premio premio, PI_BA_Convocatoria convocatoria, PI_BA_Categoria categoria, PI_BA_Forma forma)
        {
            var listaPreguntas = AplicacionService.GetFormularioByCategoria(categoria.cveCategoria);

            if (listaPreguntas != null)
            {
                foreach (var pregunta in listaPreguntas)
                {
                    Panel panel = new Panel();
                    panel.CssClass = "list-group-item";
                    TextBox input = new TextBox();
                    input.Text     = pregunta.Texto;
                    input.CssClass = "pregunta form-control";
                    input.Attributes.Add("type", "text");
                    input.Attributes.Add("name", "mytext");
                    input.Attributes.Add("placeholder", "Pregunta");
                    input.Attributes.Add("id", pregunta.cvePregunta);
                    LiteralControl lit    = new LiteralControl("<input class='pregunta form-control' type='text' name='mytext' placeholder='Pregunta' value='" + pregunta.Texto + "'/>");
                    LiteralControl remove = new LiteralControl("<a href='#' class='remove'>Eliminar</a>");
                    panel.Controls.Add(lit);
                    panel.Controls.Add(remove);
                    simpleList.Controls.Add(panel);
                }
            }
            else
            {
                Panel panel = new Panel();
                panel.CssClass = "list-group-item";
                TextBox input = new TextBox();
                input.CssClass = "pregunta form-control";
                input.Attributes.Add("type", "text");
                input.Attributes.Add("name", "mytext");
                input.Attributes.Add("placeholder", "Pregunta");
                input.Attributes.Add("id", "pregunta_" + numPregunta);
                LiteralControl remove = new LiteralControl("<a href='#' class='remove'>Eliminar</a>");
                panel.Controls.Add(input);
                panel.Controls.Add(remove);
                simpleList.Controls.Add(panel);
            }
            numPregunta++;
        }
示例#7
0
        private void SetForm(PI_BA_Premio premio, PI_BA_Categoria categoria)
        {
            litTituloPremio.Text    = "Premio " + premio.Nombre;
            litTituloCategoria.Text = "Categoría: " + categoria.Nombre;

            String emailCandidato = Session[StringValues.CorreoSesion].ToString();

            if (AplicacionService.CheckCandidatoInCategoria(emailCandidato, categoria.cveCategoria))
            {
                // mostrar error y ocultar boton de enviar
                alreadySubmittedLabel.Visible = true;
                EnviarBtn.Visible             = false;

                btnManager.Visible = false;
            }
            else
            {
                // vaciar coleccion de preguntas para evitar IDs repetidos
                PanelFormulario.Controls.Clear();

                // obtener lista de preguntas para la categoria y desplegar el formulario
                var preguntas = AplicacionService.GetFormularioByCategoria(categoria.cveCategoria);

                if (preguntas != null && preguntas.Count > 0)
                {
                    uploadFile.Visible = true;
                    short iNumber = 0;
                    foreach (var pregunta in preguntas)
                    {
                        Panel panel = new Panel();
                        panel.CssClass = "question-box";
                        panel.Attributes.Add("runat", "server");

                        LiteralControl h5 = new LiteralControl("<h5>" + (iNumber + 1) + ". " + pregunta.Texto + "</h5>");
                        panel.Controls.Add(h5);
                        LiteralControl p = new LiteralControl("<p>" + iMaxCharacters + " " + sCharactersRemainingMessage + "</p>");
                        panel.Controls.Add(p);

                        TextBox tb = new TextBox();
                        tb.ID        = "textbox_" + pregunta.cvePregunta;
                        tb.TextMode  = TextBoxMode.MultiLine;
                        tb.Rows      = 4;
                        tb.MaxLength = iMaxCharacters;
                        tb.CssClass  = "form-control form-text-area scrollbar-custom";
                        tb.Attributes.Add("onKeyUp", "updateCharactersLeft(this); validateAnswerCharacters(event);");
                        tb.Attributes.Add("maxlength", iMaxCharacters.ToString());
                        tb.Attributes.Remove("cols");
                        tb.Attributes.Add("runat", "server");
                        tb.Attributes.Add("onvalid", "this.setCustomValidity('Por favor, responde la pregunta')");

                        RequiredFieldValidator validator = new RequiredFieldValidator();
                        validator.ControlToValidate = tb.ID;

                        Panel pAlert = new Panel();
                        pAlert.CssClass = "alert alert-danger alert-no-answer";

                        LiteralControl lcText = new LiteralControl("<strong>Error:</strong> Por favor rellene este campo.");
                        pAlert.Controls.Add(lcText);

                        validator.Controls.Add(pAlert);

                        panel.Controls.Add(tb);
                        panel.Controls.Add(validator);

                        PanelFormulario.Controls.Add(panel);

                        iNumber++;
                    }
                }
            }
        }
示例#8
0
        private void CrearFormulario(String sCategoriaID, PI_BA_Premio premio, PI_BA_Categoria categoria)
        {
            // vaciar coleccion de preguntas para evitar IDs repetidos
            PanelFormulario.Controls.Clear();

            litTituloPremio.Text    = "Premio " + premio.Nombre;
            litTituloCategoria.Text = "Categoría: " + categoria.Nombre;

            string idApp    = Request.QueryString["aplicacion"];
            string FileName = AplicacionService.GetAplicacionById(idApp).NombreArchivo;

            if (FileName != null)
            {
                ClientScript.RegisterStartupScript(GetType(), "hwa", "writeName('" + FileName + "');", true);
            }

            // obtener lista de preguntas y respuestas para la aplicacion
            var preguntas = AplicacionService.GetFormularioByCategoria(sCategoriaID);

            if (preguntas != null)
            {
                uploadFile.Visible = true;
                short iNumber = 0;
                foreach (var pregunta in preguntas)
                {
                    Panel panel = new Panel();
                    panel.CssClass = "question-box";
                    panel.Attributes.Add("runat", "server");

                    LiteralControl h5 = new LiteralControl("<h5>" + (iNumber + 1) + ". " + pregunta.Texto + "</h5>");
                    panel.Controls.Add(h5);
                    LiteralControl p = new LiteralControl("<p>" + iMaxCharacters + " " + sCharactersRemainingMessage + "</p>");
                    panel.Controls.Add(p);

                    TextBox tb = new TextBox();
                    tb.ID        = "textbox_" + pregunta.cvePregunta;
                    tb.TextMode  = TextBoxMode.MultiLine;
                    tb.Rows      = 4;
                    tb.MaxLength = iMaxCharacters;
                    tb.CssClass  = "form-control form-text-area scrollbar-custom";
                    tb.Attributes.Add("onKeyUp", "updateCharactersLeft(this); validateAnswerCharacters(event);");
                    tb.Attributes.Add("maxlength", iMaxCharacters.ToString());
                    tb.Attributes.Add("runat", "server");
                    tb.Attributes.Add("onvalid", "this.setCustomValidity('Por favor, responde la pregunta')");
                    tb.Attributes.Remove("cols");

                    var respuesta = AplicacionService.GetRespuestaByPreguntaAndAplicacion(pregunta.cvePregunta, Request.QueryString["aplicacion"]);
                    if (respuesta != null)
                    {
                        tb.Text = respuesta.Valor;
                    }

                    RequiredFieldValidator validator = new RequiredFieldValidator();
                    validator.ControlToValidate = tb.ID;

                    Panel pAlert = new Panel();
                    pAlert.CssClass = "alert alert-danger alert-no-answer";

                    LiteralControl lcText = new LiteralControl("<strong>Error:</strong> Por favor rellene este campo.");
                    pAlert.Controls.Add(lcText);

                    validator.Controls.Add(pAlert);

                    panel.Controls.Add(tb);
                    panel.Controls.Add(validator);

                    PanelFormulario.Controls.Add(panel);

                    iNumber++;
                }
            }
        }
示例#9
0
 public Premio(PI_BA_Premio premio, List <PI_BA_Categoria> listaCategorias)
 {
     Nombre          = premio.Nombre;
     Descripcion     = premio.Descripcion;
     ListaCategorias = listaCategorias;
 }
示例#10
0
        protected void Page_Load(object sender, EventArgs e)
        {
            // Verificar si ya expiro la sesion
            if (Session.Contents.Count == 0)
            {
                Response.Redirect("~/WebForms/Error/Error401.aspx", false);
            }

            MasterPage = (MP_Global)Page.Master;

            // obtener el premio usando el query string de su id
            String idPremio = Request.QueryString["p"];

            premioActual = ConvocatoriaService.GetPremioById(idPremio);

            // Mensaje si pude editar los datos del premio
            switch (Request.QueryString["s"])
            {
            case "success":
                MasterPage.ShowMessage("Aviso", "Los cambios fueron realizados con éxito.");
                break;

            case "failed":
                MasterPage.ShowMessage("Error", "El servidor encontró un error al procesar la solicitud.");
                break;

            case "failed2":
                MasterPage.ShowMessage("Error", "La imagen proporcionada debe estar en formato PNG, BMP o JPG.");
                break;

            case "failed3":
                MasterPage.ShowMessage("Error", "Debes llenar todos los campos.");
                break;
            }

            if (!IsPostBack)
            {
                // revisar la primera vez que se carga la pagina que se haya iniciado sesion con cuenta de admin
                if (Session[StringValues.RolSesion] != null)
                {
                    if (Session[StringValues.RolSesion].ToString() != StringValues.RolAdmin)
                    {
                        // si no es admin, redireccionar a inicio general
                        Response.Redirect("~/WebForms/Login.aspx", false);
                    }
                }
                else
                {
                    Response.Redirect("~/WebForms/Login.aspx", false);
                }

                if (premioActual != null)
                {
                    // Nombre & Descripcion Premio
                    TituloPremioSeleccionado.Text      = premioActual.Nombre;
                    DescripcionPremioSeleccionado.Text = premioActual.Descripcion;

                    // Imagen Premio
                    if (premioActual.NombreImagen != null)
                    {
                        avatarImage.Style.Add("background-image", "url(/AwardPictures/" + premioActual.NombreImagen + ")");
                    }
                    else
                    {
                        avatarImage.Style.Add("background-image", "url(/Resources/img/default-award.png)");
                    }

                    // Cargar lista de convocatorias
                    var convocatoriasPremio = ConvocatoriaService.GetConvocatoriasPremio(idPremio);
                    foreach (var convocatoria in convocatoriasPremio)
                    {
                        Prueba.Controls.Add(new LiteralControl(
                                                "<tr onclick=\"window.location.assign('AdministraCategorias.aspx?c=" + convocatoria.cveConvocatoria + "'); \">" +
                                                "<td class=\"dt-profile-pic\">" +
                                                "<img src = \"/Resources/img/trophy.png\" class=\"avatar img-circle\" alt=\"avatar\" style=\"max-width: 28px;\">" +
                                                "</td>" +
                                                "<td>" + convocatoria.TituloConvocatoria.ToString() + "</td>" +
                                                "<td>" + FormatearStringFecha(convocatoria.FechaInicio.ToString()) + "</td>" +
                                                "<td>" + FormatearStringFecha(convocatoria.FechaFin.ToString()) + "</td>" +
                                                "<td>" + FormatearStringFecha(convocatoria.FechaVeredicto.ToString()) + "</td>" +
                                                ConvocatoriaStatus(convocatoria.FechaInicio, convocatoria.FechaVeredicto) +
                                                "</tr>"
                                                ));
                    }
                }
                else
                {
                    Response.Redirect("inicioAdmin.aspx", false);
                }
            }
        }