Source for file jelix_api.php

Documentation is available at jelix_api.php

  1. <?php
  2.  
  3. /**
  4.  * pure PHP version of API provided by the extension of Jelix for PHP
  5.  * @package      jelix
  6.  * @subpackage   core
  7.  * @author       Laurent Jouanneau
  8.  * @copyright    2012 Laurent Jouanneau
  9.  * @link         http://www.jelix.org
  10.  * @licence      GNU Lesser General Public Licence see LICENCE file or http://www.gnu.org/licenses/lgpl.html
  11.  */
  12.  
  13. if (function_exists('jelix_version')) {
  14.     return;
  15. }
  16. else {
  17.  
  18. function jelix_read_ini($fileName$config null{
  19.     $conf jIniFile::read($fileName);
  20.     if ($config !== null{
  21.         foreach ($conf as $k=>$v{
  22.             if (!isset($config->$k)) {
  23.                 $config->$k $v;
  24.                 continue;
  25.             }
  26.     
  27.             if ($k[1== '_')
  28.                 continue;
  29.             if (is_array($v)) {
  30.                 $config->$k array_merge($config->$k$v);
  31.             }
  32.             else {
  33.                 $config->$k $v;
  34.             }
  35.         }
  36.         return $config;
  37.     }
  38.     $conf = (object) $conf;
  39.     return $conf;
  40. }
  41.  
  42.  
  43. function jelix_scan_module_sel($selStr$selObj{
  44.     if (preg_match("/^(([a-zA-Z0-9_\.]+)~)?([a-zA-Z0-9_\.]+)$/"$selStr$m)) {
  45.         if($m[1]!='' && $m[2]!=''){
  46.             $selObj->module $m[2];
  47.         }else{
  48.             $selObj->module '';
  49.         }
  50.         $selObj->resource $m[3];
  51.         return true;
  52.     }
  53.     return false;
  54. }
  55.  
  56.  
  57. function jelix_scan_action_sel($selStr$selObj$actionName{
  58.     if (preg_match("/^(?:([a-zA-Z0-9_\.]+|\#)~)?([a-zA-Z0-9_:]+|\#)?(?:@([a-zA-Z0-9_]+))?$/"$selStr$m)) {
  59.         $m array_pad($m4'');
  60.         $selObj->module $m[1];
  61.         if($m[2== '#')
  62.             $selObj->resource $actionName;
  63.         else
  64.             $selObj->resource $m[2];
  65.         $r explode(':',$selObj->resource);
  66.         if(count($r== 1){
  67.             $selObj->controller 'default';
  68.             $selObj->method $r[0]==''?'index':$r[0];
  69.         }else{
  70.             $selObj->controller $r[0]=='' 'default':$r[0];
  71.             $selObj->method $r[1]==''?'index':$r[1];
  72.         }
  73.         $selObj->resource $selObj->controller.':'.$selObj->method;
  74.         $selObj->request $m[3];
  75.         return true;
  76.     }
  77.     return false;
  78. }
  79.  
  80. function jelix_scan_class_sel($selStr$selObj{
  81.     if (preg_match("/^(([a-zA-Z0-9_\.]+)~)?([a-zA-Z0-9_\.\\/]+)$/"$selStr$m)) {
  82.         $selObj->module $m[2];
  83.         $selObj->resource $m[3];
  84.         if (($p=strrpos($m[3]'/')) !== false{
  85.             $selObj->className substr($m[3],$p+1);
  86.             $selObj->subpath substr($m[3],0,$p+1);
  87.         }
  88.         else {
  89.             $selObj->className $m[3];
  90.             $selObj->subpath ='';
  91.         }
  92.         return true;
  93.     }
  94.     return false;
  95. }
  96.  
  97. function jelix_scan_locale_sel($selStr$selObj{
  98.     if (preg_match("/^(([a-zA-Z0-9_\.]+)~)?([a-zA-Z0-9_]+)\.([a-zA-Z0-9_\-\.]+)$/"$selStr$m)) {
  99.         if ($m[1]!='' && $m[2]!=''{
  100.             $selObj->module $m[2];
  101.         }
  102.         else {
  103.             $selObj->module '';
  104.         }
  105.         $selObj->resource $m[3];
  106.         $selObj->fileKey $m[3];
  107.         $selObj->messageKey $m[4];
  108.         return true;
  109.     }
  110.     return false;
  111. }
  112.  
  113.  
  114. }

Documentation generated on Wed, 04 Jan 2017 22:54:02 +0100 by phpDocumentor 1.4.3