using System; using System.Collections.Generic; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data; using System.Web.Security; public partial class Conteudos_Agenda_Formulario : System.Web.UI.Page { public Intranet.Users intranetUser; public int nivelPermissao = int.MaxValue; public string menu = ""; protected void Page_Load(object sender, EventArgs e) { /* ================================================================================= */ // UTILIZADOR AUTENTICADO intranetUser = (Intranet.Users)Session["intranetUser"]; /* ================================================================================= */ // NÍVEL DE PERMISSÃO menu = Intranet.Sistema.Menu(Request.ServerVariables["url"]); nivelPermissao = intranetUser.NivelPermissao(menu); /* ================================================================================= */ if (nivelPermissao <= Intranet.Sistema.Permissoes.Ler) { string status = Request.QueryString["status"]; string id = Request.QueryString["id"]; int _id = 0; /* ============================================================================= */ // MENUS if (status.CompareTo("adicionar") == 0) { lbGravar.Visible = true; lbGravarSair.Visible = true; } if (status.CompareTo("editar") == 0) { lbGravar.Visible = true; lbGravarSair.Visible = true; lbGravarNovo.Visible = true; // ID do conteúdo a editar if (id != null) { _id = Convert.ToInt16(id); } } if (!IsPostBack) { /* ========================================================================= */ /* ========================================================================= */ // PREENCHIMENTO DOS DADOS if (status != null) { /* ========================================================================= */ /* ========================================================================= */ // PREENCHIMENTO DAS DROPDOWNLIST for (int i = 0; i < 23; i++) { ddlInicioHora.Items.Add(new ListItem(i.ToString(), i.ToString())); ddlFimHora.Items.Add(new ListItem(i.ToString(), i.ToString())); } for (int i = 0; i < 60; i+=5) { ddlInicioMinuto.Items.Add(new ListItem(i.ToString(), i.ToString())); ddlFimMinuto.Items.Add(new ListItem(i.ToString(), i.ToString())); } /* ===================================================================== */ /* ===================================================================== */ // EDITAR CONTEÚDO if (status.CompareTo("editar") == 0) { DataTable dtConteudo = SiteECom.Conteudos.Agenda.Detalhes(_id); if (dtConteudo.Rows.Count > 0) { /* ============================================================= */ /* ALTERAR */ tbTitulo.Text = dtConteudo.Rows[0]["titulo"].ToString(); tbResumo.Text = dtConteudo.Rows[0]["resumo"].ToString(); tbDesenvolvimento.Text = dtConteudo.Rows[0]["desenvolvimento"].ToString(); tbPor.Text = dtConteudo.Rows[0]["por"].ToString(); tbLocal.Text = dtConteudo.Rows[0]["local"].ToString(); string[] _inicio = dtConteudo.Rows[0]["data_ini"].ToString().Split(new char[] {' '}); string[] _fim = dtConteudo.Rows[0]["data_fim"].ToString().Split(new char[] {' '}); tbInicio.Text = _inicio[0].ToString().CompareTo("0000.00.00") == 0 ? "" : _inicio[0]; ddlInicioHora.SelectedValue = Convert.ToInt16(_inicio[1].Split(new char[] { ':' })[0]).ToString(); ddlInicioMinuto.SelectedValue = Convert.ToInt16(_inicio[1].Split(new char[] { ':' })[1]).ToString(); tbFim.Text = _fim[0].ToString().CompareTo("0000.00.00") == 0 ? "" : _fim[0]; ddlFimHora.SelectedValue = Convert.ToInt16(_fim[1].Split(new char[] { ':' })[0]).ToString(); ddlFimMinuto.SelectedValue = Convert.ToInt16(_fim[1].Split(new char[] { ':' })[1]).ToString(); /* ============================================================= */ /* ============================================================= */ // DESTAQUE if (dtConteudo.Rows[0]["destaque"].ToString() == "1") { cbDestaque.Checked = true; } else { cbDestaque.Checked = false; } // ACTIVO if (dtConteudo.Rows[0]["activo"].ToString() == "1") { cbActivo.Checked = true; } else { cbActivo.Checked = false; } } } /* ===================================================================== */ } } // CRIAÇÃO E EDIÇÃO divCriado.InnerHtml = Intranet.Conteudos.Criado("conteudo_agenda", _id); divEditado.InnerHtml = Intranet.Conteudos.Editado("conteudo_agenda", _id); } } /* ===================================================================================== */ /* ===================================================================================== */ protected void Gravar(object sender, EventArgs e) { bool gravado = false; string status = Request.QueryString["status"]; string id = Request.QueryString["id"]; string _inicio = tbInicio.Text.CompareTo("") == 0 ? "0000.00.00" : tbInicio.Text; string _fim = tbFim.Text.CompareTo("") == 0 ? "0000.00.00" : tbFim.Text; try { _inicio = _inicio + " " + ddlInicioHora.SelectedValue + ":" + ddlInicioMinuto.SelectedValue; _fim = _fim + " " + ddlFimHora.SelectedValue + ":" + ddlFimMinuto.SelectedValue; if (status.CompareTo("adicionar") == 0) { gravado = SiteECom.Conteudos.Agenda.Gravar(tbTitulo.Text, tbResumo.Text, tbDesenvolvimento.Text, tbPor.Text, tbLocal.Text, _inicio, _fim, Convert.ToInt16(cbDestaque.Checked), Convert.ToInt16(cbActivo.Checked), intranetUser.ID, intranetUser.Departamento.ID); if (gravado) { // Verifica qual o último conteúdo gravado e redirecciona para a respectiva página de edição Response.Redirect(Request.ServerVariables["url"] + "?id=" + Intranet.Conteudos.Ultimo("conteudo_agenda") + "&status=editar"); } else { ShowErro("iconLoad", "Erro ao adicionar conteúdo! Verifique os seus dados."); } } if (status.CompareTo("editar") == 0) { gravado = SiteECom.Conteudos.Agenda.Editar(Convert.ToInt16(id), tbTitulo.Text, tbResumo.Text, tbDesenvolvimento.Text, tbPor.Text, tbLocal.Text, _inicio, _fim, Convert.ToInt16(cbDestaque.Checked), Convert.ToInt16(cbActivo.Checked), intranetUser.ID, intranetUser.Departamento.ID); if (!gravado) { ShowErro("iconLoad", "Erro ao editar conteúdo! Verifique os seus dados."); } } } catch (Exception) { ShowErro("iconLoad", "Erro ao adicionar conteúdo! Contacte o Administrador do Sistema."); } } /* ===================================================================================== */ /* ===================================================================================== */ protected void GravarSair(object sender, EventArgs e) { bool gravado = false; string status = Request.QueryString["status"]; string id = Request.QueryString["id"]; string _inicio = tbInicio.Text.CompareTo("") == 0 ? "0000.00.00" : tbInicio.Text; string _fim = tbFim.Text.CompareTo("") == 0 ? "0000.00.00" : tbFim.Text; try { _inicio = _inicio + " " + ddlInicioHora.SelectedValue + ":" + ddlInicioMinuto.SelectedValue; _fim = _fim + " " + ddlFimHora.SelectedValue + ":" + ddlFimMinuto.SelectedValue; if (status.CompareTo("adicionar") == 0) { gravado = SiteECom.Conteudos.Agenda.Gravar(tbTitulo.Text, tbResumo.Text, tbDesenvolvimento.Text, tbPor.Text, tbLocal.Text, _inicio, _fim, Convert.ToInt16(cbDestaque.Checked), Convert.ToInt16(cbActivo.Checked), intranetUser.ID, intranetUser.Departamento.ID); if (!gravado) { ShowErro("iconLoad", "Erro ao adicionar conteúdo! Verifique os seus dados."); } } if (status.CompareTo("editar") == 0) { gravado = SiteECom.Conteudos.Agenda.Editar(Convert.ToInt16(id), tbTitulo.Text, tbResumo.Text, tbDesenvolvimento.Text, tbPor.Text, tbLocal.Text, _inicio, _fim, Convert.ToInt16(cbDestaque.Checked), Convert.ToInt16(cbActivo.Checked), intranetUser.ID, intranetUser.Departamento.ID); if (!gravado) { ShowErro("iconLoad", "Erro ao editar conteúdo! Verifique os seus dados."); } } if (gravado) { // Redirecciona para a página da Listagem Response.Redirect(Request.ServerVariables["url"].Replace("formulario.aspx", "")); } } catch (Exception) { ShowErro("iconLoad", "Erro ao adicionar conteúdo! Contacte o Administrador do Sistema."); } } /* ===================================================================================== */ /* ===================================================================================== */ protected void GravarNovo(object sender, EventArgs e) { bool gravado = false; string _inicio = tbInicio.Text.CompareTo("") == 0 ? "0000.00.00" : tbInicio.Text; string _fim = tbFim.Text.CompareTo("") == 0 ? "0000.00.00" : tbFim.Text; try { _inicio = _inicio + " " + ddlInicioHora.SelectedValue + ":" + ddlInicioMinuto.SelectedValue; _fim = _fim + " " + ddlFimHora.SelectedValue + ":" + ddlFimMinuto.SelectedValue; gravado = SiteECom.Conteudos.Agenda.Gravar(tbTitulo.Text, tbResumo.Text, tbDesenvolvimento.Text, tbPor.Text, tbLocal.Text, _inicio, _fim, Convert.ToInt16(cbDestaque.Checked), Convert.ToInt16(cbActivo.Checked), intranetUser.ID, intranetUser.Departamento.ID); if (gravado) { // Redirecciona para a página da Listagem Response.Redirect(Request.ServerVariables["url"].Replace("formulario.aspx", "")); } else { ShowErro("iconLoad", "Erro ao adicionar conteúdo! Verifique os seus dados."); } } catch (Exception) { ShowErro("iconLoad", "Erro ao adicionar conteúdo! Contacte o Administrador do Sistema."); } } /* ===================================================================================== */ /* ===================================================================================== */ /// /// Mostra mensagem de erro /// /// DIV onde o erro irá aparecer /// Mensagem de erro protected void ShowErro(string Area, string Mensagem) { string script = ""; if (!Page.ClientScript.IsStartupScriptRegistered("ERRO")) { Page.ClientScript.RegisterStartupScript(this.GetType(), "ERRO", script); } } /* ========================================================================================= */ /* ========================================================================================= */ }