コード例 #1
0
ファイル: variablefield.php プロジェクト: gruz/MenuAry
 protected function getLabel($flag = false)
 {
     $debug = true;
     $debug = false;
     // Here I handle dependant load of categories
     static $count = array();
     static $from_params = null;
     static $defaults = array();
     //~ static $runNumber = 0;
     //~ $runNumber++;
     if (isset($this->element['label'])) {
         $this->element['label'] = $this->_replaceNestedJtextConstants($this->element['label']);
     }
     if (isset($this->element['description'])) {
         $this->element['description'] = $this->_replaceNestedJtextConstants($this->element['description']);
     }
     if (!$flag || !isset($this->origname)) {
         $this->origname = (string) $this->fieldname;
     }
     if (!isset($defaults[$this->origname])) {
         $default = $this->getAttribute('default');
         //~ if (trim($default) != '') {
         //~ }
         $defaults[$this->origname] = $default;
     }
     $this->defaults = $defaults;
     //~ echo '<pre style="background:#efefef">'.PHP_EOL;
     //~ print_r($this->origname);
     //~ echo '</pre>'.PHP_EOL;
     if (isset($this->element['source_parameter']) && isset($this->element['target_parameter']) && $flag) {
         //$this_field_name = $this->name;
         $this_field_name = (string) $this->element['name'];
         $this_field_name = $this->origname;
         //~ echo '<pre> $this_field_name ='.PHP_EOL;
         //~ print_r($this_field_name);
         //~ echo '</pre>'.PHP_EOL;
         if ($debug) {
             dumpMessage($this_field_name);
         }
         if ($debug) {
             dumpTrace();
         }
         if (empty($from_params)) {
             $key_in_params = (string) $GLOBALS['variablefield']['fields'][0]->element['name'];
             $from_params = $GLOBALS['variablefield']['fields'][0]->form->getData()->toObject()->params->{$key_in_params};
             //~ echo '<pre>'.PHP_EOL;
             //~ print_r($from_params);
             //~ echo '</pre>'.PHP_EOL;
             if ($debug) {
                 dump($from_params, '$from_params');
             }
         }
         //~ echo '<pre style="background:red"> defaults = '.PHP_EOL;
         //~ print_r($defaults);
         //~ echo '</pre>'.PHP_EOL;
         if ($debug) {
             dump($this, '$this');
         }
         if ($debug) {
             dumpMessage($this_field_name);
         }
         if (!isset($count[$this_field_name])) {
             $count[$this_field_name] = 0;
         } else {
             $count[$this_field_name]++;
             $count[$this_field_name]++;
         }
         $index = $count[$this_field_name];
         $source_parameters = explode(',', (string) $this->element['source_parameter']);
         $target_parameters = explode(',', (string) $this->element['target_parameter']);
         //if($debug) dump ($this_field_name,'$this_field_name');
         if ($debug) {
             dump((string) $this->element['target_parameter'], (string) $this->element['source_parameter']);
         }
         $get_joomla_content_type_by_id = (string) $this->element['get_joomla_content_type_by_id'];
         //if($debug) dump ($get_joomla_content_type_by_id,'$get_joomla_content_type_by_id');
         foreach ($source_parameters as $k => $source_parameter) {
             $values = array();
             //~ if($debug) dump ($source_parameter,'$source_parameter');
             //~ if($debug) dump ($count[$this_field_name],'$count[$this_field_name]');
             if ($debug) {
                 dump($index, '$index');
             }
             if (!isset($from_params[$source_parameter])) {
                 for ($i = 0; $i < $index + 1; $i++) {
                     if ($i == $index) {
                         $values[] = $defaults[$source_parameter];
                     } else {
                         $values[] = null;
                     }
                 }
                 if ($debug) {
                     dump($values, '$values 1');
                 }
             } else {
                 $values = $from_params[$source_parameter];
                 if ($debug) {
                     dump($values, '$values 2');
                 }
             }
             if (is_array($values[$index])) {
                 $this->element[$target_parameters[$k]] = implode(',', $values[$index]);
             } else {
                 if ($debug) {
                     dumpMessage(' Setting <b>' . $target_parameters[$k] . '</b> to  <b>' . $values[$index] . '</b>');
                 }
                 $this->element[$target_parameters[$k]] = $values[$index];
             }
         }
     }
     $basetype = isset($this->element['basetype']) ? $this->element['basetype'] : 'text';
     $basetype = (string) $basetype;
     if ($basetype == 'group' || !empty($GLOBALS['variablefield']['current_group'])) {
         //If start or end of group
         return null;
     } else {
         //Let show the script, that the group has ended
         $formfield = JFormHelper::loadFieldType($basetype);
         $formfield->setup($this->element, '');
         return $formfield->getLabel();
     }
     return null;
 }
コード例 #2
0
ファイル: dump.php プロジェクト: justinlyon/scc
/**
 * Alias to dump the backtrace
 */
function dumpBacktrace()
{
    dumpTrace();
}