private void LoadAwards() { //awardList.Controls.Add(); tbAwardDescription.Attributes.Add("MaxLength", "500"); var premios = ConvocatoriaService.GetAllPremios(); foreach (var p in premios) { // Div encargado del responsivo Panel pCol = new Panel(); pCol.CssClass = "col-md-4 item-list"; // Div encargado del diseño Panel pCreateItem = new Panel(); pCreateItem.CssClass = "create-item"; // Div encargado de la parte superior (imagen) Panel pUserHeader = new Panel(); pUserHeader.CssClass = "award-header"; Panel pAwardImage = new Panel(); pAwardImage.CssClass = "award-thumbnail"; if (p.NombreImagen != null) { pAwardImage.Style.Add("background-image", "url(/AwardPictures/" + p.NombreImagen + ")"); } else { pAwardImage.Style.Add("background-image", "url(/Resources/img/default-award.png)"); } pUserHeader.Controls.Add(pAwardImage); // Div encargado de la parte inferior (titulo) Panel pAwardTitle = new Panel(); pAwardTitle.CssClass = "award-description-fix text-center"; LiteralControl spanTitle = new LiteralControl("<span class=\"award-description\"> " + p.Nombre + "</span>"); pAwardTitle.Controls.Add(spanTitle); pCreateItem.Controls.Add(pUserHeader); pCreateItem.Controls.Add(pAwardTitle); pCol.Controls.Add(pCreateItem); // Agregar al panel principal awardList.Controls.Add(new LiteralControl("<a href=AdministraConvocatorias.aspx?p=" + p.cvePremio + ">")); awardList.Controls.Add(pCol); awardList.Controls.Add(new LiteralControl("</a>")); } }
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); } if (!IsPostBack) { // revisar la primera vez que se carga la pagina que se haya iniciado sesion con cuenta de candidato if (Session[StringValues.RolSesion] != null) { if (Session[StringValues.RolSesion].ToString() != StringValues.RolCandidato) { // si no es candidato, redireccionar a login Response.Redirect("~/WebForms/Login.aspx", false); } } else { Response.Redirect("~/WebForms/Login.aspx", false); } } // obtener lista de premios var listaPremios = ConvocatoriaService.GetAllPremios(); var i = 0; // crear un panel para cada premio con su link respectivo foreach (var premio in listaPremios) { // Si no hay convocatoria, no muestro el premio var conv = ConvocatoriaService.GetMostRecentConvocatoria(premio.cvePremio); if (conv == null) { continue; } // Checar si la convocatoria ya vencio if (conv.FechaInicio > DateTime.Today || conv.FechaFin < DateTime.Today) { continue; } // Si no hay categorias en la convocatoria, no muestro el premio var listCat = ConvocatoriaService.GetCategoriasByConvocatoria(conv.cveConvocatoria); if (listCat == null) { continue; } if (listCat.Count == 0) { continue; } Literal lit = new Literal(); // Un panel para cada premio (imagen, descripcion y boton de detalle) lit.Text = "<div class='col-md-6'>" + "<div class='blockquote-box clearfix' style=''>" + "<div class=\"col-sm-4 prem-img\">" + "<img src = /AwardPictures/" + premio.NombreImagen + " class=\"img-square\" style=\"margin-top: 15px; margin-bottom: 15px; \"/>" + "</div>" + "<div class=\"tab-content col-sm-8\">" + "<h4>Premio: <strong>" + premio.Nombre + "</strong></h4>" + "<p class='descPremio'>" + premio.Descripcion + "</p>" + "<div class='div-prem-btn'>" + "<button id = '" + premio.cvePremio + "' type = 'button' class='btn btn-sm btn-primary' data-toggle='modal' data-target='#myModal" + i + "'>" + "Detalles" + "</button>" + "</div>" + "</div>" + "</div>" + "</div>"; colPremio.Controls.Add(lit); // Encabezado y cuerpo del modal Literal lit2 = new Literal(); lit2.Text = "<div class='modal fade' id='myModal" + i + "' tabindex='-1' role='dialog' aria-labelledby='myModalLabel'>" + "<div class='modal-dialog' role='document'>" + "<div class='modal-content'>" + "<div class='modal-header text-center'>" + "<button type='button' class='close' data-dismiss='modal' aria-label='Close'>" + "<span aria-hidden='true'>×</span>" + "</button>" + "<h3 class='modal-title' id='myModalLabel'>" + premio.Nombre + "</h3>" + "<hr class='shorthr'>" + "</div>" + "<div class='modal-body'>" + "<p>" + premio.Descripcion + "</p>" + "<div class='form-group'>" + "<label for='sel" + i + "'> Selecciona la categoria correspondiente:</label>" + "<select class='form-control' onchange='changeAnchor(this,\"" + premio.cvePremio + "\")' id ='sel" + i + "'>"; modalList.Controls.Add(lit2); // Agregar por cada categoria, la opcion en el dropdown foreach (var cat in listCat) { Literal litCa = new Literal(); litCa.Text = "<option id='" + cat.cveCategoria + "'>" + cat.Nombre + "</option>"; modalList.Controls.Add(litCa); } // Pie del modal Literal lit3 = new Literal(); lit3.Text = "</select></div></div>" + "<div class='modal-footer'>" + "<button type='button' class='btn btn-default' style=\"margin-right: 10px;\" data-dismiss='modal'>" + "Cancelar" + "</button>" + "<a id='" + premio.cvePremio + "' href='Formulario.aspx?c=" + listCat[0].cveCategoria + "'>" + "<button type='button' class='btn btn-primary'>" + "Aplicar" + "</button>" + "</a>" + "</div>" + "</div></div></div>"; modalList.Controls.Add(lit3); i = i + 1; } }