Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/04/2011, 11:56
August
 
Fecha de Ingreso: febrero-2005
Mensajes: 626
Antigüedad: 19 años, 9 meses
Puntos: 10
Condicional en template

Hola actualmente tengo esta clasesita que me obtiene templates, y lo hace bien, pero como puedo hacer para poder usar condicionales dentro de los templates, y no me pidan que use smarty, tempatepower u otro, que ya estoy usando esto

Código PHP:
class templating extends db{    
    function 
cache_templates($forzar=FALSE){
        
$db=new db;
        global 
$templates;
        if(!
is_array($templates) or empty($templates) or $forzar==TRUE){
            
$templatessql=$db->select("templates","","","","","","",0);    
            foreach(
$templatessql as $datos){
                
$templates[$datos["nombre"]]=$datos["template"];
                
$templates['tipo'][$datos["nombre"]]=$datos["tipo"];
                
$templates[$datos["id"]]=$datos["template"];
            }
        }
    }
    
    function 
cache_info_templates($forzar=FALSE){
        
$db=new db;
        global 
$templateinfo;
        if(!
is_array($templateinfo) or empty($templateinfo) or $forzar==TRUE){
            
$templatessql=$db->select("info_template","","","","","","",0);    
            foreach(
$templatessql as $datos){
                
$templateinfo[$datos["nombre"]]['titulo']=$datos["titulo"];
                
$templateinfo[$datos["nombre"]]['id_templates']=$datos["id_templates"];
                
$templateinfo[$datos["nombre"]]['imagenes']=$datos["imagenes"];
                
$templateinfo[$datos["nombre"]]['css']=$datos["css"];
                
$templateinfo[$datos["nombre"]]['js']=$datos["js"];
            }
        }
    }
    
    function 
obtener($archivo){
        global 
$templateinfo;
        global 
$variables;
        global 
$info;
        global 
$css;
        global 
$js;
        
$salida="";
        if(empty(
$info['id_templates']["$archivo"])){
            
$this->cache_info_templates(TRUE);    
        }
        
$info['titulo']=$templateinfo["$archivo"]['titulo'];
        
$info['id_templates']=explode(",",$templateinfo["$archivo"]['id_templates']);
        
$info['imagenes']=explode(",",$templateinfo["$archivo"]['imagenes']);
        
$info['css']=$templateinfo["$archivo"]['css'];
        
$info['js']=$templateinfo["$archivo"]['js'];
        if(!empty(
$info['css'])){
            
$css="<LINK REL=\"STYLESHEET\" HREF=\"archivos.wio?e=".$info['css']."&t=CSS\">";            
        }
        if(!empty(
$info['js'])){
     
$js="<SCRIPT  language=\"JavaScript\" type=\"text/javascript\" SRC=\"JS/inventario_prueba.js\"></SCRIPT>";
    
        }
        
$this->imprimir($info["id_templates"]);
    }
    
    
    function 
imprimir($templat){
        global 
$variables;
        global 
$info;
        global 
$css;
        global 
$js;
        
$salida="";
        
$resultado="";
  
        eval(
'$salida = "' addslashes($this->fetch_templates($templat)) . '";');
        echo 
str_replace("\'""'",$salida);
    }
    
    function 
fetch_templates($elementos){
        
$salida="";

        global 
$templates;
        if(empty(
$templates["$elementos"])){
            
$this->cache_templates(TRUE);    
        }
        if(
is_array($elementos)){
            foreach(
$elementos as $archivo){
                
$salida.=$templates["$archivo"];
            }
        }else{
            
$salida=$templates["$elementos"];
        }
    return 
$salida;
    }