Beispiel #1
0
 /**
  * Generates a button toolbar.
  * @param array $groups the button group configurations.
  * @param array $htmlOptions additional HTML options.
  * @return string the generated button toolbar.
  */
 public static function buttonToolbar(array $groups, $htmlOptions = array())
 {
     if (!empty($groups)) {
         self::addCssClass('btn-toolbar', $htmlOptions);
         $parentOptions = array('color' => BsArray::popValue('color', $htmlOptions), 'size' => BsArray::popValue('size', $htmlOptions), 'disabled' => BsArray::popValue('disabled', $htmlOptions));
         $output = self::openTag('div', $htmlOptions);
         foreach ($groups as $groupOptions) {
             if (isset($groupOptions['visible']) && $groupOptions['visible'] === false) {
                 continue;
             }
             $items = BsArray::popValue('items', $groupOptions, array());
             if (empty($items)) {
                 continue;
             }
             // todo: consider removing the support for htmlOptions.
             $options = BsArray::popValue('htmlOptions', $groupOptions, array());
             if (!empty($options)) {
                 $groupOptions = BsArray::merge($options, $groupOptions);
             }
             $groupOptions = BsArray::copyValues(array('color', 'size', 'disabled'), $parentOptions, $groupOptions);
             $output .= self::buttonGroup($items, $groupOptions);
         }
         $output .= '</div>';
         return $output;
     }
     return '';
 }