PHP Classes
elePHPant
Icontem

Pagina: Page generation abstraction using template objects

Recommend this page to a friend!
Stumble It! Stumble It! Bookmark in del.icio.us Bookmark in del.icio.us
  Info   View files View files (3)   DownloadInstall with Composer Download .zip   Reputation   Support forum   Blog    
Last Updated Ratings Unique User Downloads Download Rankings  
2003-12-16 (11 years ago) RSS 2.0 feedNot yet rated by the usersTotal: 523 All time: 5,263 This week: 1,358Up
Version License Categories  
pagina 1.0GNU General Publi...Templates
Description Author  

This package is meant to abstract the generation of HTML pages by defining the elements of page using arrays.

The template class was translated to Portuguese and adapted from the Fast Templates class also available in this site.

The code, the comments and documentation are mostly written in Portuguese.

In Portuguese:

Objeto de manipulação de Templates baseados num engine adaptado do ft, aqui mesmo do PHPClasses.

Pretende abstrair ainda mais a geração de html de modo a definir todos os elementos de uma página na forma de matrizes.

Picture of Fábio Coelho
Name: Fábio Coelho <contact>
Classes: 1 package by
Country: Brazil Brazil
Age: 39
All time rank: 2949222 in Brazil Brazil
Week rank: 1621 Up126 in Brazil Brazil Up

Details provided by the author  
1. Brazilian Portuguese
2. English
3. Código/Code

---------------------------------------------

1. Brazilian Portuguese

Classe Página, mais uma camada de abstração de HTML em cima do Fast 
Templates. Não usei o Fast Templates, mas reescrevi parte do código, 
traduzi e adaptei a ft, classe presente aqui no PHPClasses.

A intenção é a completa separação de HTML e PHP, sem um objeto muito grande
ou complexo, não é pra gerenciar o mundo, apenas separar HTML e PHP através
da arquitetura de modelos base (templates). Além claro de ser originalmente
dirigido a programadores de língua portuguesa.

Futuramente colocarei uma documentação mais detalhada a respeito da Classe 
Pagina, mas por enquanto  estarei pelo menos disponibilizando o código pra 
quem quiser colaborar ou sugestionar mudanças.

---------------------------------------------

2. English

Class Pagina, more one HTML abstraction layer base om Fast Templates. I 
didn't use Fast Templates, I translate and adapted the ft, class from here,
PHPClasses!

The intention is the complete separation among HTML and the PHP code, with 
an object with little complexity and not so big, it is not to manage de 
World, just separate HTML and PHP code trought templates architecture. Its 
primaryly targeted to Brazilian Portuguese developers.

In near future, I'll put a more detailed documentation about Class Pagina, 
but for now I'll making available the code for who want to colaborate or 
sugest changes.

---------------------------------------------

3. Código/Code

class Pagina
{
var $Pagina_Inicial = null; 

Vai receber o objeto modelo
Will receive de "modelo" object

var $Bloco_Principal = ""; 

Determina o nome do Bloco Principal do modelo
Set the name of de Bloco Principal (Main Block) of the "modelo" object


function Pagina($Caminho)

Caminho Determina o local dos arquivos de modelos HTML
Caminho set the local of the HTML Templates files


function Carrega_Modelo_Base($Arquivos_modelo)

A primeira chave da estrutura define o nome da seção principal
$Arquivos_Modelo é um array associativo com as chaves representando
os nomes das seções e os valores contendo os nomes dos modelos HTML
correspondentes.

The first key of the structure defines the name of the main section 
$Arquivo_Modelo, is an associative array indexed by the names of the 
sections and the values have the names of the HTML Template files.


function Blocos_Dinamicos($Blocos)

Determina a hierarquia de blocos interna de cada arquivo html carregado.

Set hierarchy of internal blocks of each HTML Template file loaded.


function Passa_Valores($Bloco, $Valores_do_Bloco)

Recebe um array de arrays $Valores_do_Bloco, cada posição no array 
principal é um array em que as chaves são as marcas do $Bloco a serem 
substituídas pelos valores. Cada nova posição nesse array implica na 
repetição do bloco. 
Se você passar uma posição "codigo" => "123456" para ser passada ao $Bloco 
"detalhes", ele procurará "detalhes_codigo" (e não "codigo") e substituirá 
por "123456'.

Receive an array of arrays $Valores_do_Bloco, each position in the main 
array is an array where the keys are the "marcas" (tags) of the $Bloco, 
that will be replaced by the values. Each new position on the main array 
implies in the block repetition.
If you pass one position "cod_cli" => "123456" to be passed to $Bloco 
"details", it will search by "details_cod_cli" (and not "cod_cli") and will
replace by "123456".


function Valor_Principal($Marca, $Valor_a_Passar)

Passando valores para marcas que não estejam em nenhum bloco ou html 
associado, mas no corpo do modelo base.

Pass values to marks outside the dynamic blocks and/or HTML templates that 
are not de main HTML template.


function Finaliza()

Imprime o conteúdo em forma de HTML, no caso de ser passado False como 
parâmetro, ele retorna sem imprimir, de modo que o html possa ser tratado 
ou feita uma avaliação.

Print the content as HTML code, if you pass an extra parameter False, it 
the code as the function return, whithout print.
  Files folder image Files  
File Role Description
Plain text file modelo.php Class Page model class (Arquivos Fonte da Classe Modelo)
Plain text file pagina.php Class Page class (Arquivo Fonte da Classe Página)
Accessible without login Plain text file readme.txt Doc. Breve descrição da Classe / Short Description

 Version Control Unique User Downloads Download Rankings  
 0%Total:523All time:5,263
 This week:0This week:1,358Up