Example #1
0
File: core.php Project: umaxfun/x4m
 function outerCall($func, $section)
 {
     if (strstr($func['method'], ':')) {
         $sep = explode(':', $func['method']);
         $f = array();
         $func_values = $this->replaceSlice($section, $func['values']);
         if ($sep[0] == 'php') {
             $r = $this->callphp($sep[1], $f, $section, $func['return']);
         } elseif (xNameSpaceHolder::isNameSpaceExists($sep[0], $sep[1])) {
             $rKey = $this->FindReplacement($section, $func['return']);
             $r = xNameSpaceHolder::call($sep[0], $sep[1], $func_values, array('value' => $this->Fields[$section][$rKey], 'section' => $section, 'return' => $func['return']));
         }
         if ($func['return']) {
             if ($func['priority'] != '@') {
                 $this->AddReplace($section, $func['return'], $r);
             } else {
                 $func['ffield'] = substr($func['ffield'], 4);
                 $func['ffield'] = substr($func['ffield'], 0, strlen($func['ffield']) - 2);
                 $this->AddReplace($section, $func['ffield'], $r);
             }
         }
     }
 }