using System; using System.Collections.Generic; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.IO; using System.Web.Security; using System.Web.Configuration; public partial class Documentacao_Popup : System.Web.UI.Page { public Intranet.Users intranetUser; public int nivelPermissao = int.MaxValue; public string menu = ""; public string repositorio = "/documentacao/site"; 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) { } else { Response.Redirect("/login.aspx"); } } /// /// CARREGAR FICHEIRO PARA REPOSITÓRIO DE DOCUMENTOS /// protected void CarregarFicheiro(object sender, EventArgs e) { if (fuDocumento.HasFile) { // VERIFICAR SE DOCUMENTO É INVÁLIDO bool docValido = true; string[] _extencoesInvalidas = WebConfigurationManager.AppSettings["documentos_invalidos"].ToString().Split(';'); foreach (string extencao in _extencoesInvalidas) { if (extencao.ToUpper().CompareTo(fuDocumento.FileName.Substring(fuDocumento.FileName.LastIndexOf('.')).Replace(".", "").ToUpper()) == 0) { docValido = false; break; } } if (docValido) { DirectoryInfo localizacao = new DirectoryInfo(Request.ServerVariables["APPL_PHYSICAL_PATH"] + "" + repositorio + "/repositorio/" + Request.QueryString["l"]); try { if (!File.Exists(localizacao.FullName.TrimEnd('\\') + "\\" + fuDocumento.FileName)) { fuDocumento.SaveAs(localizacao.FullName.TrimEnd('\\') + "\\" + fuDocumento.FileName); // Redirecciona para a mesma página Response.Redirect("popup.aspx?l=" + Request.QueryString["l"] + "&campo=" + Request.QueryString["campo"]); } else { ShowErro("iconLoad", "Documento já existente."); } } catch (Exception) { ShowErro("iconLoad", "Erro ao carregar documento. Contacte o administrador do sistema."); } } else { ShowErro("iconLoad", "Documento inválido."); } } else { ShowErro("iconLoad", "Documento inválido."); } } /* ===================================================================================== */ /* ===================================================================================== */ /// /// 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); } } /* ========================================================================================= */ /* ========================================================================================= */ }