Пример #1
0
 /**
  * A standard radiolist that uses bootstrap
  *
  * @param unknown_type $data
  * @param unknown_type $name
  * @param unknown_type $attribs
  * @param unknown_type $optKey
  * @param unknown_type $optText
  * @param unknown_type $selected
  * @param unknown_type $idtag
  * @param unknown_type $translate
  * @return string
  */
 public static function btradiolist($data, $name, $attribs = null, $optKey = 'value', $optText = 'text', $selected = null, $idtag = false, $translate = false)
 {
     reset($data);
     $html = '';
     if (is_array($attribs)) {
         $attribs = JArrayHelper::__toString($attribs);
     }
     $id_text = $idtag ? $idtag : $name;
     foreach ($data as $obj) {
         $k = $obj->{$optKey};
         $t = $translate ? JText::_($obj->{$optText}) : $obj->{$optText};
         $id = isset($obj->id) ? $obj->id : null;
         $extra = '';
         $extra .= $id ? ' id="' . $obj->id . '"' : '';
         if (is_array($selected)) {
             foreach ($selected as $val) {
                 $k2 = is_object($val) ? $val->{$optKey} : $val;
                 if ($k == $k2) {
                     $extra .= ' selected="selected"';
                     break;
                 }
             }
         } else {
             $extra .= (string) $k == (string) $selected ? ' checked="checked"' : '';
         }
         $active = '';
         if (!empty($k)) {
             $active = 'active';
         }
         $html .= "\n\t" . '<input type="radio" name="' . $name . '"' . ' id="' . $id_text . $k . '" value="' . $k . '"' . ' ' . $extra . ' ' . $attribs . '/>' . "\n\t" . '<label for="' . $id_text . $k . '"' . ' id="' . $id_text . $k . '-lbl" class="btn">' . $t . '</label>';
     }
     $html .= "\n";
     return $html;
 }