Example #1
0
function hocwp_term_meta_add_field($args = array())
{
    $callback = hocwp_get_value_by_key($args, 'callback');
    if (!hocwp_callback_exists($callback)) {
        $callback = hocwp_get_value_by_key($args, 'field_callback');
    }
    $field_args = hocwp_get_value_by_key($args, 'field_args');
    $field_args = wp_parse_args($field_args, $args);
    $class = hocwp_get_value_by_key($args, 'class');
    $name = hocwp_get_value_by_key($args, 'name');
    $id = hocwp_get_value_by_key($args, 'id');
    hocwp_transmit_id_and_name($id, $name);
    $tmp = hocwp_sanitize_html_class($name);
    hocwp_add_string_with_space_before($class, 'form-field term-' . $name . '-wrap hocwp');
    ?>
	<div class="<?php 
    echo $class;
    ?>
">
		<?php 
    if (hocwp_callback_exists($callback)) {
        call_user_func($callback, $field_args);
    } else {
        _e('Please set a valid callback for this field', 'hocwp-theme');
    }
    ?>
	</div>
	<?php 
}
Example #2
0
function hocwp_option_add_setting_field($base, $args)
{
    $option = hocwp_option_get_object_from_list($base);
    if (hocwp_object_valid($option)) {
        $id = isset($args['id']) ? $args['id'] : '';
        $name = isset($args['name']) ? $args['name'] : '';
        hocwp_transmit_id_and_name($id, $name);
        $args['id'] = $option->get_field_id($id);
        $args['name'] = $option->get_field_name($name);
        if (!isset($args['value'])) {
            $default = hocwp_get_value_by_key($args, 'default');
            $args['value'] = $option->get_by_key($name, $default);
        }
        $option->add_field($args);
    }
}
 public function add_field($args = array())
 {
     $data_type = hocwp_get_value_by_key($args, 'data_type', 'default');
     $callback = hocwp_get_value_by_key($args, 'field_callback');
     if (hocwp_callback_exists($callback)) {
         if ('hocwp_field_input_checkbox' == $callback) {
             $data_type = 'checkbox';
         } elseif ('hocwp_field_color_picker' == $callback) {
             $this->set_use_color_picker(true);
         }
     }
     $args['data_type'] = $data_type;
     $id = isset($args['id']) ? $args['id'] : '';
     $name = isset($args['name']) ? $args['name'] : '';
     $class = isset($args['class']) ? $args['class'] : '';
     if (!isset($args['field_class'])) {
         $args['field_class'] = $class;
     }
     hocwp_transmit_id_and_name($id, $name);
     $args['id'] = $id;
     $args['name'] = $name;
     if (isset($args['default'])) {
         $args['field_args']['default'] = $args['default'];
     }
     $this->fields[] = $args;
 }
 public function sanitize_field_args(&$args)
 {
     $id = isset($args['id']) ? $args['id'] : '';
     $name = isset($args['name']) ? $args['name'] : '';
     hocwp_transmit_id_and_name($id, $name);
     $args['id'] = $id;
     $args['name'] = $name;
     if ($this->is_term_meta()) {
     } elseif ($this->is_menu_item_meta()) {
         $args['before'] = '<div class="field-' . hocwp_sanitize_html_class($name) . ' description description-wide">';
         $args['after'] = '</div>';
     } else {
         $args['before'] = '<div class="meta-row">';
         $args['after'] = '</div>';
     }
     return $args;
 }
Example #5
0
function hocwp_sanitize_field_args(&$args)
{
    if (isset($args['sanitized'])) {
        return $args;
    }
    $field_class = isset($args['field_class']) ? $args['field_class'] : '';
    $class = isset($args['class']) ? $args['class'] : '';
    hocwp_add_string_with_space_before($field_class, $class);
    $widefat = isset($args['widefat']) ? (bool) $args['widefat'] : true;
    $id = isset($args['id']) ? $args['id'] : '';
    $label = isset($args['label']) ? $args['label'] : '';
    $name = isset($args['name']) ? $args['name'] : '';
    hocwp_transmit_id_and_name($id, $name);
    $value = isset($args['value']) ? $args['value'] : '';
    $description = isset($args['description']) ? $args['description'] : '';
    $args['class'] = $field_class;
    $args['field_class'] = $field_class;
    $args['id'] = $id;
    $args['label'] = $label;
    $args['name'] = $name;
    $args['value'] = $value;
    $args['description'] = $description;
    $args['widefat'] = $widefat;
    $args['sanitized'] = true;
    return $args;
}
Example #6
0
function hocwp_field_input_right_label($type, $args = array())
{
    $options = isset($args['options']) ? $args['options'] : array();
    $value = isset($args['value']) ? $args['value'] : '';
    $label = isset($args['label']) ? $args['label'] : '';
    $id = hocwp_get_value_by_key($args, 'id');
    $name = hocwp_get_value_by_key($args, 'name');
    hocwp_transmit_id_and_name($id, $name);
    if (!hocwp_array_has_value($options)) {
        $option_item = array('label' => $label, 'value' => $value, 'default' => hocwp_get_value_by_key($args, 'default'), 'id' => $id, 'name' => $name);
        $options[] = $option_item;
    }
    $count = 0;
    foreach ($options as $option) {
        $value = isset($option['value']) ? $option['value'] : $value;
        $option['type'] = $type;
        $option['before'] = isset($args['before']) ? $args['before'] : '<p>';
        $option['after'] = isset($args['after']) ? $args['after'] : '</p>';
        $option['name'] = isset($option['name']) ? $option['name'] : $name;
        $option['value'] = $value;
        if (hocwp_string_empty($value) && 0 == $count && 'radio' == $type) {
            $option['attributes']['checked'] = 'checked';
        }
        hocwp_field_input($option);
        $count++;
    }
}