/**
  * 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) . ' &nbsp;&nbsp;&nbsp;';
                                    } 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) . ' &nbsp;&nbsp;&nbsp;';
                                    }
                                }
                            }
                            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) . ' &nbsp;&nbsp;&nbsp;';
                                    } 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) . ' &nbsp;&nbsp;&nbsp;';
                                    }
                                }
                            }
                            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 
        }
    }