public function _calculate_short_names() { $fields = $this->get_fields(); $names = array(); foreach ($fields as $field) { $name = WPBDP_Form_Field_Type::normalize_name($field->get_label()); if ($name == 'images' || $name == 'image' || $name == 'username' || $name == 'featured_level' || $name == 'expires_on' || $name == 'sequence_id' || in_array($name, $names, true)) { $name = $name . '-' . $field->get_id(); } $names[$field->get_id()] = $name; } update_option('wpbdp-field-short-names', $names); return $names; }
/** * @since 3.5.3 */ public function get_css_classes($render_context = '') { $css_classes = array(); $css_classes[] = 'wpbdp-form-field'; $css_classes[] = 'wpbdp-form-field-id-' . $this->get_id(); $css_classes[] = 'wpbdp-form-field-type-' . $this->get_field_type()->get_id(); $css_classes[] = 'wpbdp-form-field-label-' . WPBDP_Form_Field_Type::normalize_name($this->get_label()); $css_classes[] = 'wpbdp-form-field-association-' . $this->get_association(); // For backwards compatibility. $css_classes[] = $this->get_field_type()->get_id(); if ($this->get_description()) { $css_classes[] = 'with-description'; } if ($this->get_validators()) { $css_classes = array_merge($css_classes, $this->get_validators()); } // Add own custom CSS classes. $css_classes = array_merge($css_classes, $this->css_classes); return apply_filters('wpbdp_form_field_css_classes', $css_classes, $this, $render_context); }
public function render_field_inner(&$field, $value, $context, &$extra = null) { $options = $field->data('options') ? $field->data('options') : array(); if ($field->get_association() == 'tags' && !$options) { $tags = get_terms(WPBDP_TAGS_TAX, array('hide_empty' => false, 'fields' => 'names')); $options = array_combine($tags, $tags); } elseif ($field->get_association() == 'category') { $html = wp_list_categories(array('taxonomy' => WPBDP_CATEGORY_TAX, 'orderby' => wpbdp_get_option('categories-order-by'), 'order' => wpbdp_get_option('categories-sort'), 'hide_empty' => 0, 'echo' => 0, 'depth' => 0, 'walker' => new CategoryFormInputWalker('checkbox', $value, $field), 'show_option_none' => '', 'title_li' => '')); return $html; } $html = ''; $i = 1; foreach ($options as $option_key => $label) { $css_classes = array(); $css_classes[] = 'wpbdp-inner-checkbox'; $css_classes[] = 'wpbdp-inner-checkbox-' . $i; $css_classes[] = 'wpbdp-inner-checkbox-' . WPBDP_Form_Field_Type::normalize_name($label); $html .= sprintf('<div class="wpbdmcheckboxclass %s"><input type="checkbox" class="%s" name="%s" value="%s" %s/> %s</div>', implode(' ', $css_classes), $field->is_required() ? 'required' : '', 'listingfields[' . $field->get_id() . '][]', $option_key, in_array($option_key, is_array($value) ? $value : array($value)) ? 'checked="checked"' : '', esc_attr($label)); $i++; } $html .= '<div style="clear:both;"></div>'; return $html; }