1<?php 2 3/** 4 * Renders a set of fields wrapped in a <fieldset> tag 5 * 6 * @uses $vars['class'] Additional CSS classes 7 * @uses $vars['align'] Field alignment (vertical|horizontal) 8 * If set to horizontal, fields will be rendered 9 * with inline display 10 * @uses $vars['justify'] Text justification (left|right|center) 11 * @uses $vars['legend'] Optional fieldset legend 12 * @uses $vars['fields'] An array of field options 13 * Field options should be suitable for use in 14 * elgg_view_field() 15 */ 16 17$vars['class'] = elgg_extract_class($vars, [ 18 'elgg-fieldset', 19 'clearfix', 20]); 21 22$align = elgg_extract('align', $vars, 'vertical'); 23unset($vars['align']); 24$vars['class'][] = "elgg-fieldset-$align"; 25 26$justify = elgg_extract('justify', $vars, ''); 27unset($vars['justify']); 28if ($justify) { 29 $vars['class'][] = "elgg-justify-$justify"; 30} 31 32$legend = elgg_extract('legend', $vars); 33unset($vars['legend']); 34 35$fields = (array) elgg_extract('fields', $vars, []); 36unset($vars['fields']); 37 38$fieldset = ''; 39if ($legend) { 40 $vars['class'][] = 'elgg-fieldset-has-legend'; 41 $fieldset .= elgg_format_element('legend', [], $legend); 42} 43 44foreach ($fields as $field) { 45 $fieldset .= elgg_view_field($field); 46} 47 48$fieldset = elgg_format_element('div', $vars, $fieldset); 49echo elgg_format_element('fieldset', [], $fieldset); 50