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 ONGD_Noticias_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
/* ===================================================================== */
/* ===================================================================== */
// EDITAR CONTEÚDO
if (status.CompareTo("editar") == 0)
{
DataTable dtConteudo = ONGD.Noticias.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();
tbFonte.Text = dtConteudo.Rows[0]["fonte"].ToString();
tbData.Text = dtConteudo.Rows[0]["data"].ToString();
/* ============================================================= */
/* ============================================================= */
// TOPO
if (dtConteudo.Rows[0]["topo"].ToString() == "1") cbTopo.Checked = true; else cbTopo.Checked = false;
// 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("ongd_noticias", _id);
divEditado.InnerHtml = Intranet.Conteudos.Editado("ongd_noticias", _id);
}
}
/* ===================================================================================== */
/* ===================================================================================== */
protected void Gravar(object sender, EventArgs e)
{
bool gravado = false;
string status = Request.QueryString["status"];
string id = Request.QueryString["id"];
try
{
if (status.CompareTo("adicionar") == 0)
{
gravado = ONGD.Noticias.Gravar(tbTitulo.Text,
tbResumo.Text,
tbDesenvolvimento.Text,
tbPor.Text,
tbFonte.Text,
tbData.Text,
Convert.ToInt16(cbTopo.Checked),
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("ongd_noticias") + "&status=editar");
}
else
{
ShowErro("iconLoad", "Erro ao adicionar conteúdo! Verifique os seus dados.");
}
}
if (status.CompareTo("editar") == 0)
{
gravado = ONGD.Noticias.Editar(Convert.ToInt16(id),
tbTitulo.Text,
tbResumo.Text,
tbDesenvolvimento.Text,
tbPor.Text,
tbFonte.Text,
tbData.Text,
Convert.ToInt16(cbTopo.Checked),
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"];
try
{
if (status.CompareTo("adicionar") == 0)
{
gravado = ONGD.Noticias.Gravar(tbTitulo.Text,
tbResumo.Text,
tbDesenvolvimento.Text,
tbPor.Text,
tbFonte.Text,
tbData.Text,
Convert.ToInt16(cbTopo.Checked),
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 = ONGD.Noticias.Editar(Convert.ToInt16(id),
tbTitulo.Text,
tbResumo.Text,
tbDesenvolvimento.Text,
tbPor.Text,
tbFonte.Text,
tbData.Text,
Convert.ToInt16(cbTopo.Checked),
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;
try
{
gravado = ONGD.Noticias.Gravar(tbTitulo.Text,
tbResumo.Text,
tbDesenvolvimento.Text,
tbPor.Text,
tbFonte.Text,
tbData.Text,
Convert.ToInt16(cbTopo.Checked),
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);
}
}
/* ========================================================================================= */
/* ========================================================================================= */
}