Lançado Adianti Framework 7.6!
Clique aqui para saber mais
menu

Adianti Solutions

API

Adianti, Framework, PHP, MVC, Active record, Front controller, IDE, RAD, Web, multiplataforma, geração de código, desenvolvimento rápido, relatórios, formulários, listagens, datagrids, gráficos, banco de dados, padrões de projeto, design patterns API do Adianti Framework.
API Docs
code
Selecione a classe

Source for file AdiantiTemplateParser.php

Documentation is available at AdiantiTemplateParser.php

  1. <?php
  2. namespace Adianti\Core;
  3.  
  4. use Adianti\Core\AdiantiCoreTranslator;
  5. use Adianti\Control\TPage;
  6. use Adianti\Registry\TSession;
  7. use Exception;
  8.  
  9. /**
  10.  * Template parser
  11.  *
  12.  * @version    7.4
  13.  * @package    core
  14.  * @author     Pablo Dall'Oglio
  15.  * @copyright  Copyright (c) 2006 Adianti Solutions Ltd. (http://www.adianti.com.br)
  16.  * @license    http://www.adianti.com.br/framework-license
  17.  */
  18. {
  19.     /**
  20.      * Parse template and replace basic system variables
  21.      * @param $content raw template
  22.      */
  23.     public static function parse($content)
  24.     {
  25.         $ini       AdiantiApplicationConfig::get();
  26.         $theme     $ini['general']['theme'];
  27.         $libraries file_get_contents("app/templates/{$theme}/libraries.html");
  28.         $class     = isset($_REQUEST['class']$_REQUEST['class''';
  29.         
  30.         if ((TSession::getValue('login'== 'admin'))
  31.         {
  32.             if (!empty($ini['general']['token']))
  33.             {
  34.                 if (file_exists("app/templates/{$theme}/builder-menu.html"))
  35.                 {
  36.                     $builder_menu file_get_contents("app/templates/{$theme}/builder-menu.html");
  37.                     $content str_replace('<!--{BUILDER-MENU}-->'$builder_menu$content);
  38.                 }
  39.             }
  40.         }
  41.         else
  42.         {
  43.             $content str_replace('<!--[IFADMIN]-->',  '<!--',  $content);
  44.             $content str_replace('<!--[/IFADMIN]-->''-->',   $content);
  45.         }
  46.         
  47.         if (!isset($ini['permission']['user_register']OR $ini['permission']['user_register'!== '1')
  48.         {
  49.             $content str_replace(['<!--[CREATE-ACCOUNT]-->''<!--[CREATE-ACCOUNT]-->']['<!--''-->']$content);
  50.         }
  51.         
  52.         if (!isset($ini['permission']['reset_password']OR $ini['permission']['reset_password'!== '1')
  53.         {
  54.             $content str_replace(['<!--[RESET-PASSWORD]-->''<!--[RESET-PASSWORD]-->']['<!--''-->']$content);
  55.         }
  56.         
  57.         $use_tabs $ini['general']['use_tabs'?? 0;
  58.         $store_tabs $ini['general']['store_tabs'?? 0;
  59.         $use_mdi_windows $ini['general']['use_mdi_windows'?? 0;
  60.         $store_mdi_windows $ini['general']['store_mdi_windows'?? 0;
  61.  
  62.         if ($use_mdi_windows{
  63.             $use_tabs 1;
  64.         }
  65.  
  66.         if ($store_mdi_windows{
  67.             $store_tabs 1;
  68.         }
  69.  
  70.         $content   str_replace('{LIBRARIES}'$libraries$content);
  71.         $content   str_replace('{class}',     $class$content);
  72.         $content   str_replace('{template}',  $theme$content);
  73.         $content   str_replace('{lang}',      AdiantiCoreTranslator::getLanguage()$content);
  74.         $content   str_replace('{debug}',     isset($ini['general']['debug']$ini['general']['debug''1'$content);
  75.         $content   str_replace('{login}',     (string) TSession::getValue('login')$content);
  76.         $content   str_replace('{title}',     isset($ini['general']['title']$ini['general']['title'''$content);
  77.         $content   str_replace('{username}',  (string) TSession::getValue('username')$content);
  78.         $content   str_replace('{usermail}',  (string) TSession::getValue('usermail')$content);
  79.         $content   str_replace('{frontpage}'(string) TSession::getValue('frontpage')$content);
  80.         $content   str_replace('{userunitid}'(string) TSession::getValue('userunitid')$content);
  81.         $content   str_replace('{userunitname}'(string) TSession::getValue('userunitname')$content);
  82.         $content   str_replace('{query_string}'$_SERVER["QUERY_STRING"?? ''$content);
  83.         $content   str_replace('{use_tabs}'$use_tabs$content);
  84.         $content   str_replace('{store_tabs}'$store_tabs$content);
  85.         $content   str_replace('{use_mdi_windows}'$use_mdi_windows$content);
  86.         $content   str_replace('{application}'$ini['general']['application']$content);
  87.         
  88.         $css       TPage::getLoadedCSS();
  89.         $js        TPage::getLoadedJS();
  90.         $content   str_replace('{HEAD}'$css.$js$content);
  91.         
  92.         return $content;
  93.     }
  94. }