/** * Automatic Set all Product Categories as Compare Categories * */ public function automatic_add_compare_categories() { $terms = get_terms("product_cat", array('hide_empty' => 0)); if (count($terms) > 0) { foreach ($terms as $category_product) { $check_existed = WC_Compare_Categories_Data::get_count("category_name='" . trim(addslashes($category_product->name)) . "'"); if ($check_existed < 1) { WC_Compare_Categories_Data::insert_row(array('category_name' => trim(addslashes($category_product->name)))); } } } }
public static function init_categories_actions() { global $wpdb; $cat_msg = ''; if (isset($_REQUEST['bt_save_cat'])) { $category_name = trim(strip_tags(addslashes($_REQUEST['category_name']))); if (isset($_REQUEST['category_id']) && $_REQUEST['category_id'] > 0) { $old_data = WC_Compare_Categories_Data::get_row($_REQUEST['category_id']); $count_category_name = WC_Compare_Categories_Data::get_count("category_name = '" . $category_name . "' AND id != '" . $_REQUEST['category_id'] . "'"); if ($category_name != '' && $count_category_name == 0) { $result = WC_Compare_Categories_Data::update_row($_REQUEST); $wpdb->query('UPDATE ' . $wpdb->prefix . 'postmeta SET meta_value="' . $category_name . '" WHERE meta_value="' . $old_data->category_name . '" AND meta_key="_wpsc_compare_category_name" '); $cat_msg = '<div class="updated below-h2" id="result_msg"><p>' . __('Compare Category Successfully edited', 'woo_cp') . '.</p></div>'; } else { $cat_msg = '<div class="error below-h2" id="result_msg"><p>' . __('Nothing edited! You already have a Compare Category with that name. Use unique names to edit each Compare Category.', 'woo_cp') . '</p></div>'; } } else { $count_category_name = WC_Compare_Categories_Data::get_count("category_name = '" . $category_name . "'"); if ($category_name != '' && $count_category_name == 0) { $category_id = WC_Compare_Categories_Data::insert_row($_REQUEST); if ($category_id > 0) { $cat_msg = '<div class="updated below-h2" id="result_msg"><p>' . __('Compare Category Successfully created', 'woo_cp') . '.</p></div>'; } else { $cat_msg = '<div class="error below-h2" id="result_msg"><p>' . __('Compare Category Error created', 'woo_cp') . '.</p></div>'; } } else { $cat_msg = '<div class="error below-h2" id="result_msg"><p>' . __('Nothing created! You already have a Compare Category with that name. Use unique names to create each Compare Category.', 'woo_cp') . '</p></div>'; } } } if (isset($_REQUEST['act']) && $_REQUEST['act'] == 'cat-delete') { $category_id = trim($_REQUEST['category_id']); WC_Compare_Categories_Data::delete_row($category_id); WC_Compare_Categories_Fields_Data::delete_row("cat_id='" . $category_id . "'"); $cat_msg = '<div class="updated below-h2" id="result_msg"><p>' . __('Compare Category deleted', 'woo_cp') . '.</p></div>'; } return $cat_msg; }
public static function auto_create_compare_category($term_id) { $term = get_term($term_id, 'product_cat'); $check_existed = WC_Compare_Categories_Data::get_count("category_name='" . trim($term->name) . "'"); if ($check_existed < 1) { WC_Compare_Categories_Data::insert_row(array('category_name' => trim(addslashes($term->name)))); } }
/** * Check product that is assigned the compare category for it */ public static function check_product_have_cat($product_id) { $compare_category = get_post_meta($product_id, '_woo_compare_category', true); if ($compare_category > 0 && WC_Compare_Categories_Data::get_count("id='" . $compare_category . "'") > 0) { $compare_fields = WC_Compare_Categories_Fields_Data::get_fieldid_results($compare_category); if (is_array($compare_fields) && count($compare_fields) > 0) { return true; } else { return false; } } else { return false; } }
public static function woo_variation_show_field_of_cat($post_id = 0, $cat_id = 0) { if ($cat_id > 0 && WC_Compare_Categories_Data::get_count("id='" . $cat_id . "'") > 0) { ?> <style> .form-table th{padding-left:0px !important;} </style> <table cellspacing="0" cellpadding="5" style="width: 100%;" class="form-table"> <tbody> <?php $compare_fields = WC_Compare_Categories_Fields_Data::get_results("cat_id='" . $cat_id . "'", 'cf.field_order ASC'); if (is_array($compare_fields) && count($compare_fields) > 0) { foreach ($compare_fields as $field_data) { ?> <tr class="form-field"> <th valign="top" scope="row"><label style="display:inline-block" for="<?php echo $field_data->field_key; ?> _<?php echo $post_id; ?> "><strong><?php echo stripslashes($field_data->field_name); ?> : </strong></label><?php if (trim($field_data->field_unit) != '') { ?> <br /> (<?php echo trim(stripslashes($field_data->field_unit)); ?> )<?php } ?> </th> <td> <?php $field_value = get_post_meta($post_id, '_woo_compare_' . $field_data->field_key, true); switch ($field_data->field_type) { case "text-area": echo '<textarea style="width:400px" name="variable_woo_compare_' . $field_data->field_key . '[' . $post_id . ']" id="' . $field_data->field_key . '_' . $post_id . '">' . $field_value . '</textarea>'; break; case "checkbox": $default_value = nl2br($field_data->default_value); $field_option = explode('<br />', $default_value); if (is_serialized($field_value)) { $field_value = maybe_unserialize($field_value); } if (!is_array($field_value)) { $field_value = array(); } if (is_array($field_option) && count($field_option) > 0) { foreach ($field_option as $option_value) { $option_value = trim(stripslashes($option_value)); if (in_array($option_value, $field_value)) { echo '<input type="checkbox" name="variable_woo_compare_' . $field_data->field_key . '[' . $post_id . '][]" value="' . esc_attr($option_value) . '" checked="checked" style="float:none; width:auto; display:inline-block;" /> ' . esc_attr($option_value) . ' '; } else { echo '<input type="checkbox" name="variable_woo_compare_' . $field_data->field_key . '[' . $post_id . '][]" value="' . esc_attr($option_value) . '" style="float:none; width:auto; display:inline-block;" /> ' . esc_attr($option_value) . ' '; } } } break; case "radio": $default_value = nl2br($field_data->default_value); $field_option = explode('<br />', $default_value); if (is_array($field_option) && count($field_option) > 0) { foreach ($field_option as $option_value) { $option_value = trim(stripslashes($option_value)); if ($option_value == $field_value) { echo '<input type="radio" name="variable_woo_compare_' . $field_data->field_key . '[' . $post_id . ']" value="' . esc_attr($option_value) . '" checked="checked" style="float:none; width:auto; display:inline-block;" /> ' . esc_attr($option_value) . ' '; } else { echo '<input type="radio" name="variable_woo_compare_' . $field_data->field_key . '[' . $post_id . ']" value="' . esc_attr($option_value) . '" style="float:none; width:auto; display:inline-block;" /> ' . esc_attr($option_value) . ' '; } } } break; case "drop-down": $default_value = nl2br($field_data->default_value); $field_option = explode('<br />', $default_value); echo '<select name="variable_woo_compare_' . $field_data->field_key . '[' . $post_id . ']" id="' . $field_data->field_key . '_' . $post_id . '" style="width:400px">'; echo '<option value="">' . __("Select value", 'woo_cp') . '</option>'; if (is_array($field_option) && count($field_option) > 0) { foreach ($field_option as $option_value) { $option_value = trim(stripslashes($option_value)); if ($option_value == $field_value) { echo '<option value="' . esc_attr($option_value) . '" selected="selected">' . esc_attr($option_value) . '</option>'; } else { echo '<option value="' . esc_attr($option_value) . '">' . esc_attr($option_value) . '</option>'; } } } echo '</select>'; break; case "multi-select": $default_value = nl2br($field_data->default_value); $field_option = explode('<br />', $default_value); if (is_serialized($field_value)) { $field_value = maybe_unserialize($field_value); } if (!is_array($field_value)) { $field_value = array(); } echo '<select multiple="multiple" name="variable_woo_compare_' . $field_data->field_key . '[' . $post_id . '][]" id="' . $field_data->field_key . '_' . $post_id . '" style="width:400px">'; if (is_array($field_option) && count($field_option) > 0) { foreach ($field_option as $option_value) { $option_value = trim(stripslashes($option_value)); if (in_array($option_value, $field_value)) { echo '<option value="' . esc_attr($option_value) . '" selected="selected">' . esc_attr($option_value) . '</option>'; } else { echo '<option value="' . esc_attr($option_value) . '">' . esc_attr($option_value) . '</option>'; } } } echo '</select>'; break; default: echo '<input style="width:400px" type="text" name="variable_woo_compare_' . $field_data->field_key . '[' . $post_id . ']" id="' . $field_data->field_key . '_' . $post_id . '" value="' . esc_attr($field_value) . '" />'; break; } ?> </td> </tr> <?php } } else { ?> <tr><td><i style="text-decoration:blink"><?php _e('There are no Features created for this category, please add some.', 'woo_cp'); ?> <a href="admin.php?page=woo-compare-features" target="_blank"><?php _e('This page', 'woo_cp'); ?> </a></i></td></tr> <?php } ?> </tbody> </table> <?php } }