/**
 * Save one product stock data 
 *
 */
function stock_manager_save_one_product_stock_data()
{
    if (current_user_can('manage_woocommerce')) {
        $product_id = sanitize_text_field($_POST['product']);
        check_ajax_referer('wsm-ajax-nonce-' . $product_id, 'secure');
        $sku = sanitize_text_field($_POST['sku']);
        $manage_stock = sanitize_text_field($_POST['manage_stock']);
        $stock_status = sanitize_text_field($_POST['stock_status']);
        $backorders = sanitize_text_field($_POST['backorders']);
        $stock = sanitize_text_field($_POST['stock']);
        $weight = sanitize_text_field($_POST['weight']);
        update_post_meta($product_id, '_sku', $sku);
        update_post_meta($product_id, '_manage_stock', $manage_stock);
        update_post_meta($product_id, '_stock_status', $stock_status);
        update_post_meta($product_id, '_backorders', $backorders);
        $_product = wc_get_product($product_id);
        //Set stock via product class
        $_product->set_stock($stock);
        if (!empty($_POST['regular_price'])) {
            $price = sanitize_text_field($_POST['regular_price']);
            if (!empty($_POST['sales_price'])) {
                $sale_price = sanitize_text_field($_POST['sales_price']);
                wsm_save_price($product_id, $price, $sale_price);
            } else {
                wsm_save_price($product_id, $price);
            }
        }
        update_post_meta($product_id, '_weight', $weight);
    }
    exit;
}
Example #2
0
 /**
  * Save all meta data
  *
  */
 public function save_all($data)
 {
     foreach ($data['product_id'] as $key => $item) {
         $_product = wc_get_product($item);
         $sku = sanitize_text_field($data['sku'][$item]);
         update_post_meta($item, '_sku', $sku);
         if (!empty($data['manage_stock'])) {
             $manage_stock = sanitize_text_field($data['manage_stock'][$item]);
             update_post_meta($item, '_manage_stock', $manage_stock);
         }
         if (!empty($data['stock_status'])) {
             $stock_status = sanitize_text_field($data['stock_status'][$item]);
             update_post_meta($item, '_stock_status', $stock_status);
         }
         if (!empty($data['backorders'])) {
             $backorders = sanitize_text_field($data['backorders'][$item]);
             update_post_meta($item, '_backorders', $backorders);
         }
         if (!empty($data['stock'])) {
             $stock = sanitize_text_field($data['stock'][$item]);
             $_product->set_stock($stock);
         }
         if (!empty($data['weight'])) {
             $weight = sanitize_text_field($data['weight'][$item]);
             update_post_meta($item, '_weight', $weight);
         }
         if (!empty($data['regular_price'])) {
             $price = sanitize_text_field($data['regular_price'][$item]);
             if (!empty($data['sales_price'])) {
                 $sale_price = sanitize_text_field($data['sales_price'][$item]);
                 wsm_save_price($item, $price, $sale_price);
             } else {
                 wsm_save_price($item, $price);
             }
         }
     }
 }