', $this['field']->attributes($attr)); $profile = preg_match('/^profile_data\[(.+)\]$/', $prefix, $matches); foreach ($fields->find('field') as $field) { $name = $field->attr('name'); $type = $field->attr('type'); $label = $field->attr('label'); $desc = $field->attr('description'); $value = $values->get($name, $field->attr('default')); $class = $profile && $matches[1] != 'default' && $values->get($name) === null ? ' class="ignore"' : null; if ($type == 'separator') { printf('
  • %s
  • ', $name); } else { printf('
    %s
    %s
    %s
    ', $class, $label, $this['field']->render($type, $prefix.'['.$name.']', $value, $field, compact('config')), $desc); } } if ($profile) { printf('
  • ', $prefix); } echo '';