예제 #1
0
        public string Include(string nome)
        {
            Velocity.Init();
            var template = new Template();

            template.Chave = nome;
            template.Get();
            if (template.Conteudo == null)
            {
                template.Conteudo = "";
            }
            var writer  = new StringWriter();
            var context = new VelocityContext();

            context.Put("template", new Template());
            context.Put("componente", new Componente());
            var usuario = Usuario.Current();

            if (usuario != null)
            {
                context.Put("usuario", usuario);
            }
            context.Put("site", Pagina.Site());
            context.Put("area", Pagina.GetAreaCorrente(false));
            Velocity.Evaluate(context, writer, "", template.Conteudo.Replace("'", "'"));
            return(writer.GetStringBuilder().ToString());
        }
예제 #2
0
        public string GetConteudoRenderizado(Hashtable parans)
        {
            Velocity.Init();
            var context = new VelocityContext(parans);

            context.Put("template", new Template());
            context.Put("componente", new Componente());
            context.Put("site", Pagina.Site());
            context.Put("area", Pagina.GetAreaCorrente(false));
            var usuario = Usuario.Current();

            if (usuario != null)
            {
                context.Put("usuario", usuario);
            }
            var writer = new StringWriter();

            Velocity.Evaluate(context, writer, "", this.Conteudo.Replace("'", "'"));
            return(writer.GetStringBuilder().ToString());
        }
예제 #3
0
        private string HtmlMenu(Componente componente)
        {
            if (componente.Conteudo == null)
            {
                componente.Conteudo = "";
            }
            var writer  = new StringWriter();
            var context = new VelocityContext();

            context.Put("menu", Pagina.GetPaginasUsuario());
            context.Put("area", Pagina.GetAreaCorrente(false));
            context.Put("site", Pagina.Site());
            var pagina = Pagina.Current();

            if (pagina != null)
            {
                context.Put("pagina_corrente", pagina);
            }
            Velocity.Evaluate(context, writer, "", componente.Conteudo);
            return(writer.GetStringBuilder().ToString());
        }
예제 #4
0
        public string GetPaginasFilhas(int idPaginaPai)
        {
            var paginaPai = new Pagina(idPaginaPai);

            paginaPai.Get();
            if (paginaPai.IDPagina == null)
            {
                return("");
            }

            Cliente cliente = Cliente.Current();

            if (cliente == null)
            {
                return("");
            }

            Usuario usuario = Usuario.Current();

            if (usuario == null)
            {
                return("");
            }

            var componente = new Componente();

            componente.Chave = "submenu";
            componente.Get();
            if (componente.Conteudo == null)
            {
                return("");
            }

            Programa programa = Programa.Current();
            Campanha campanha = Campanha.Current();

            var paginas = new DataBase.Pagina().GetPaginasFilhas(this, idPaginaPai, usuario.IDUsuario, cliente.IDCliente,
                                                                 (programa != null ? programa.IDPrograma : null), (campanha != null ? campanha.IDCampanha : null));;

            if (paginas.Count < 1)
            {
                return("");
            }

            Velocity.Init();
            var writer  = new StringWriter();
            var context = new VelocityContext();

            context.Put("area", Pagina.GetAreaCorrente(false));
            context.Put("site", Pagina.Site());
            context.Put("paginaPai", paginaPai);
            context.Put("submenu", paginas);
            var pagina = Pagina.Current();

            if (pagina != null)
            {
                context.Put("pagina_corrente", pagina);
            }
            Velocity.Evaluate(context, writer, "", componente.Conteudo);
            return(writer.GetStringBuilder().ToString());
        }