function logs_detail()
{
    $total_post = get_option('post_product');
    $LAIDKey = get_option('linksync_laid');
    update_option('linksync_sycning_status', 'completed');
    linksync_class::add('Product Sync Woo to Vend', 'success', $total_post . ' Product synced', $LAIDKey);
}
function linksync_DeleteProduct($post_id)
{
    $pro_object = new WC_Product($post_id);
    if ($pro_object->post->post_type == 'product') {
        $testMode = get_option('linksync_test');
        $LAIDKey = get_option('linksync_laid');
        $apicall = new linksync_class($LAIDKey, $testMode);
        if (!defined('ABSPATH')) {
            define('ABSPATH', dirname(__FILE__) . '/');
        }
        include_once ABSPATH . 'wp-includes/post.php';
        $product_sku = get_post_meta($post_id, '_sku', true);
        if (!empty($product_sku)) {
            $apicall->linksync_deleteProduct($product_sku);
        }
    }
}
<?php

if (!defined('ABSPATH')) {
    exit;
    // Exit if accessed directly
}
$product_type = get_option('product_sync_type_QBO');
if (get_option('linksync_status') == 'Active') {
    if ($product_type == 'two_way' || $product_type == 'wc_to_QB') {
        //check the post type (Product)
        if (isset($_POST['post_type']) && $_POST['post_type'] == 'product') {
            global $wpdb;
            $taxsetup = false;
            $testMode = get_option('linksync_test');
            $LAIDKey = get_option('linksync_laid');
            $apicall = new linksync_class($LAIDKey, $testMode);
            if ($apicall->lastresponse['result'] == 'success') {
                if ($_POST['post_status'] != 'trash') {
                    if (@empty($_POST['_sku'])) {
                        $_POST['_sku'] = 'sku_' . $_POST['post_ID'];
                        update_post_meta($_POST['post_ID'], '_sku', 'sku_' . $_POST['post_ID']);
                    }
                    $product['sku'] = html_entity_decode($_POST['_sku']);
                    //SKU(unique Key/Numbers)
                    //check for the product status ->publish or draft
                    $product['active'] = isset($_POST['post_status']) && $_POST['post_status'] == 'draft' ? 0 : 1;
                    #prices
                    //if the Product is update
                    if ($_POST['action'] == 'editpost') {
                        # only for POST ( Product type)
                        if ($_POST['original_post_status'] == 'publish' || $_POST['original_post_status'] == 'pending') {
<?php

$apicall = new linksync_class($LAIDKey, $testMode);
if (isset($_POST['save_product_sync_setting'])) {
    if (isset($_POST['product_sync_type_QBO']) && !empty($_POST['product_sync_type_QBO'])) {
        update_option('product_sync_type_QBO', $_POST['product_sync_type_QBO']);
    }
    if (isset($_POST['ps_name_title'])) {
        if ($_POST['ps_name_title'] == 'on') {
            update_option('ps_name_title', $_POST['ps_name_title']);
        } else {
            update_option('ps_name_title', 'off');
        }
    } else {
        update_option('ps_name_title', 'off');
    }
    //Pending
    if (isset($_POST['ps_pending'])) {
        if ($_POST['ps_pending'] == 'on') {
            update_option('ps_pending', $_POST['ps_pending']);
        } else {
            update_option('ps_pending', 'off');
        }
    } else {
        update_option('ps_pending', 'off');
    }
    // Price
    if (isset($_POST['ps_price'])) {
        if ($_POST['ps_price'] == 'on') {
            update_option('ps_price', $_POST['ps_price']);
            if (isset($_POST['excluding_tax'])) {
示例#5
0
               }
           }
           if (isset($_POST['in_woo']) && !empty($_POST['in_woo'])) {
               $laids = get_option('linksync_laid');
               foreach ($_POST['product_sku'] as $product_id => $product_sku) {
                   if (!empty($product_sku)) {
                       $count = wp_delete_post($product_id);
                       //use the product Id and delete the product
                       if ($count) {
                           $method = "Success";
                           $message = 'Product Sku:' . $product_sku . ', Product Id in Woo:' . $product_id;
                       } else {
                           $method = "Error";
                           $message = "Unable to Delete Product";
                       }
                       linksync_class::add('Product Deleted(In Woo Store):Clean Up', $method, $message, $laids);
                   }
               }
           }
           $class1 = 'error';
           $class2 = 'updated';
           $message_resp = "Clean up Run Successfully!!";
       } else {
           $class1 = 'updated';
           $class2 = 'error';
           $message_resp = "No Product(s) Selected !!";
       }
       ?>
 <script>
                                   linksync_jQuery1('#response').removeClass("<?php 
       echo $class1;
<?php

$apicall = new linksync_class($LAIDKey, $testMode);
if (isset($_POST['save_product_sync_setting'])) {
    if (isset($_POST['product_sync_type']) && !empty($_POST['product_sync_type'])) {
        update_option('product_sync_type', $_POST['product_sync_type']);
        if ($_POST['product_sync_type'] == 'vend_to_wc-way') {
            if (isset($_POST['ps_quantity'])) {
                if ($_POST['ps_quantity'] == 'on') {
                    if (empty($_POST['outlet'])) {
                        $message['result'] = 'error';
                        $message['message'] = 'You didn\'t select any outlet !';
                    } else {
                        $message['result'] = 'success';
                    }
                } else {
                    $message['result'] = 'success';
                }
            } else {
                $message['result'] = 'success';
            }
        } elseif ($_POST['product_sync_type'] == 'wc_to_vend' || $_POST['product_sync_type'] == 'two_way') {
            $message['result'] = 'success';
        } else {
            $message['result'] = 'success';
        }
    }
    if (isset($message['result']) && $message['result'] == 'success') {
        update_option('prod_update_suc', NULL);
        update_option('prod_last_page', NULL);
        update_option('product_detail', NULL);
示例#7
0
                    update_option('prod_last_page', NULL);
                    update_option('product_detail', NULL);
                }
            }
            if (isset($products['errorCode']) || !isset($products) || empty($products)) {
                update_option('prod_update_suc', get_option('prod_update_suc'));
            }
            if (isset($products['pagination']['results']) && $products['pagination']['results'] != 0) {
                linksync_class::add('Product Sync Vend to Woo', 'success', $products['pagination']['results'] . ' Product(s) synced.', $LAIDKey);
            }
            $message['message'] .= 'Product Sync:Complete Successfully!!';
        } else {
            $message['message'] .= '<span style="color:#d54e21;">Product Sync has been Disabled Or Not Selected</span>';
        }
    } else {
        linksync_class::add('Webhook Triggered', 'error', 'Invalid Request', '');
        # Error to be loggged
    }
    fflush($fp);
    // flush output before releasing the lock
    flock($fp, LOCK_UN);
    // release the lock
} else {
    echo "Couldn't get the lock!";
}
if (isset($message['message']) && !empty($message['message'])) {
    update_option('product_detail', NULL);
    echo json_encode($message);
    exit;
}
exit;
function order_product_post()
{
    global $wpdb;
    $testMode = get_option('linksync_test');
    $LAIDKey = get_option('linksync_laid');
    $apicall = new linksync_class($LAIDKey, $testMode);
    if (isset($_REQUEST['key']) && !empty($_REQUEST['key'])) {
        $orderId = wc_get_orderid_by_order_key($_REQUEST['key']);
    } else {
        $orderId = $_POST['ID'];
    }
    //Checking for already sent Order
    $sentOrderIds = get_option('linksync_sent_order_id');
    if (isset($sentOrderIds)) {
        if (!empty($sentOrderIds)) {
            $order_id_array = unserialize($sentOrderIds);
        } else {
            $order_id_array = array();
        }
        if (!in_array($orderId, $order_id_array)) {
            update_option('linksync_sent_order_id', serialize(array_merge($order_id_array, array($orderId))));
            $taxsetup = false;
            $product = array();
            $order = new WC_Order($orderId);
            //Ordered product(s)
            $items = $order->get_items();
            foreach ($items as $item) {
                $product = array();
                $product_id = $item['product_id'];
                $query = mysql_query("SELECT post_status,post_content FROM `" . $wpdb->prefix . "posts` WHERE ID='" . $product_id . "'");
                if (mysql_num_rows($query) != 0) {
                    $result = mysql_fetch_assoc($query);
                    if (isset($result) && !empty($result)) {
                        if ($result['post_status'] != 'trash') {
                            $post_detail = get_post_meta($product_id);
                            if (@empty($post_detail['_sku'][0])) {
                                $post_detail['_sku'][0] = 'sku_' . $product_id;
                            }
                            $post_detail['_sku'][0] = linksync_removespaces_sku_orderProduct($post_detail['_sku'][0]);
                            update_post_meta($product_id, '_sku', $post_detail['_sku'][0]);
                            $product['sku'] = html_entity_decode($post_detail['_sku'][0]);
                            //SKU(unique Key)
                            //product status ->publish
                            $product['active'] = isset($result['post_status']) && $result['post_status'] == 'publish' ? 1 : 0;
                            // Price with Tax
                            if (get_option('woocommerce_calc_taxes') == 'yes') {
                                if (get_option('linksync_woocommerce_tax_option') == 'on') {
                                    if (get_option('woocommerce_prices_include_tax') == 'yes') {
                                        $excluding_tax = 'off';
                                    } else {
                                        $excluding_tax = 'on';
                                    }
                                } else {
                                    $excluding_tax = get_option('excluding_tax');
                                }
                            } else {
                                $excluding_tax = get_option('excluding_tax');
                            }
                            $display_retail_price_tax_inclusive = get_option('linksync_tax_inclusive');
                            if (get_option('ps_price') == 'on') {
                                if (isset($post_detail['_tax_status'][0]) && $post_detail['_tax_status'][0] == 'taxable') {
                                    # Product with TAX
                                    $taxname = empty($post_detail['_tax_class'][0]) ? 'standard-tax' : $post_detail['_tax_class'][0];
                                    $response_taxes = linksyn_get_tax_details($taxname);
                                    // echo"<pre>"; print_r($response_taxes);
                                    if ($response_taxes['result'] == 'success') {
                                        $product['tax_name'] = html_entity_decode($response_taxes['data']['tax_name']);
                                        $product['tax_rate'] = $response_taxes['data']['tax_rate'];
                                        $taxsetup = true;
                                    }
                                }
                                if ($excluding_tax == 'on') {
                                    # https://www.evernote.com/shard/s144/sh/e63f527b-903f-4002-8f00-313ff0652290/d9c1e0ce5a95800a
                                    if ($taxsetup) {
                                        if (isset($post_detail['_regular_price'][0]) && !empty($post_detail['_regular_price'][0])) {
                                            //cost price:_regular_price
                                            $regular_price = (double) $post_detail['_regular_price'][0];
                                            // Get Tax_value
                                            $tax_rate = (double) $product['tax_rate'];
                                            $tax_value = (double) ($regular_price * $tax_rate);
                                            /* For excluding tax (both Woo Tax Excluding and Vend Tax Excluding)
                                             * display_retail_price_tax_inclusive 1, sell_price = Woo Final price + tax
                                             * For display_retail_price_tax_inclusive 0, sell_price = Woo Final price
                                             */
                                            if ($display_retail_price_tax_inclusive == '1') {
                                                $price = $post_detail['_regular_price'][0] + $tax_value;
                                            } elseif ($display_retail_price_tax_inclusive == '0') {
                                                $price = $post_detail['_regular_price'][0];
                                            }
                                            //sell price:_regular_price
                                            $product['sell_price'] = str_replace(',', '', $price);
                                            $product['list_price'] = str_replace(',', '', $price);
                                            $product['tax_value'] = $tax_value;
                                        }
                                    } else {
                                        // excluding tax off and tax not enabled in woocomerce
                                        if (isset($post_detail['_regular_price'][0]) && !empty($post_detail['_regular_price'][0])) {
                                            //cost price:_regular_price
                                            //sell price:_regular_price
                                            $product['sell_price'] = str_replace(',', '', $post_detail['_regular_price'][0]);
                                            $product['list_price'] = str_replace(',', '', $post_detail['_regular_price'][0]);
                                        }
                                    }
                                } else {
                                    // No effect on price
                                    if (isset($post_detail['_regular_price'][0]) && !empty($post_detail['_regular_price'][0])) {
                                        $regular_price = (double) $post_detail['_regular_price'][0];
                                        //                                                 Get Tax_value
                                        $tax_rate = (double) $product['tax_rate'];
                                        $tax_value = $regular_price - $regular_price / (1 + $tax_rate);
                                        if ($display_retail_price_tax_inclusive == '1') {
                                        } elseif ($display_retail_price_tax_inclusive == '0') {
                                            $post_detail['_regular_price'][0] = $post_detail['_regular_price'][0] - $tax_value;
                                        }
                                        //sell price:_regular_price
                                        $product['sell_price'] = str_replace(',', '', $post_detail['_regular_price'][0]);
                                        $product['list_price'] = str_replace(',', '', $post_detail['_regular_price'][0]);
                                    }
                                }
                            }
                            if (isset($post_detail['_stock_status'][0]) && $post_detail['_stock_status'][0] == 'instock') {
                                $product['quantity'] = isset($post_detail['_stock'][0]) ? $post_detail['_stock'][0] : 0;
                            }
                            #Name/Title Check
                            if (get_option('ps_name_title') == 'on') {
                                $product['name'] = html_entity_decode($item['name']);
                            }
                            #Description
                            if (get_option('ps_description') == 'on') {
                                $product['description'] = html_entity_decode($result['post_content']);
                            }
                            $product['includes_tax'] = isset($post_detail['_tax_status'][0]) && $post_detail['_tax_status'][0] == 'taxable' ? true : false;
                            #---Outlet---Product----#
                            if (get_option('ps_quantity') == 'on') {
                                if (get_option('ps_wc_to_vend_outlet') == 'on') {
                                    $getoutlets = get_option('wc_to_vend_outlet_detail');
                                    if (isset($getoutlets) && !empty($getoutlets)) {
                                        $outlet = explode('|', $getoutlets);
                                        if (isset($post_detail['_stock'][0]) && !empty($post_detail['_stock'][0])) {
                                            $product['outlets'] = array(array('name' => html_entity_decode($outlet[0]), 'quantity' => $post_detail['_stock'][0]));
                                        }
                                    }
                                }
                            } else {
                                $product['outlets'] = array(array('quantity' => NULL));
                            }
                            #qunantity
                            //
                            #Tags
                            if (get_option('ps_tags') == 'on') {
                                //To get the Detail of the Tags and Category of the product using product id(Post ID)
                                $tags_query = "SELECT " . $wpdb->prefix . "terms.name FROM `" . $wpdb->prefix . "term_taxonomy` JOIN " . $wpdb->prefix . "terms ON(" . $wpdb->prefix . "terms.term_id=" . $wpdb->prefix . "term_taxonomy.term_id)  JOIN " . $wpdb->prefix . "term_relationships ON(" . $wpdb->prefix . "term_relationships.term_taxonomy_id=" . $wpdb->prefix . "term_taxonomy.term_taxonomy_id) WHERE " . $wpdb->prefix . "term_taxonomy.`taxonomy`='product_tag' AND " . $wpdb->prefix . "term_relationships.object_id='" . $product_id . "'";
                                $result_tags = mysql_query($tags_query) or die(mysql_error());
                                //                    if (!$result_tags)
                                //                        die("Error In  Connection : " . mysql_error() . " Line No. " . __LINE__);
                                if (mysql_num_rows($result_tags) != 0) {
                                    $tags_product_type = array();
                                    while ($row_tags = mysql_fetch_assoc($result_tags)) {
                                        $tags_product_type[] = array('name' => html_entity_decode($row_tags['name']));
                                    }
                                }
                                if (isset($tags_product_type) && !empty($tags_product_type)) {
                                    $product['tags'] = $tags_product_type;
                                }
                                //To free an array to use futher
                                unset($tags_product_type);
                            }
                            #brands
                            if (get_option('ps_brand') == 'on') {
                                //To get the Detail of the Tags and Category of the product using product id(Post ID)
                                $brands_query = "SELECT " . $wpdb->prefix . "terms.name FROM `" . $wpdb->prefix . "term_taxonomy` JOIN " . $wpdb->prefix . "terms ON(" . $wpdb->prefix . "terms.term_id=" . $wpdb->prefix . "term_taxonomy.term_id)  JOIN " . $wpdb->prefix . "term_relationships ON(" . $wpdb->prefix . "term_relationships.term_taxonomy_id=" . $wpdb->prefix . "term_taxonomy.term_taxonomy_id) WHERE " . $wpdb->prefix . "term_taxonomy.`taxonomy`='product_brand' AND " . $wpdb->prefix . "term_relationships.object_id='" . $product_id . "'";
                                $result_brands = mysql_query($brands_query) or die(mysql_error());
                                if (mysql_num_rows($result_brands) != 0) {
                                    while ($row_brands = mysql_fetch_assoc($result_brands)) {
                                        $brands[] = array('name' => html_entity_decode($row_brands['name']));
                                    }
                                }
                                if (!empty($brands)) {
                                    $product['brands'] = $brands;
                                }
                                //To free an array to use futher
                                unset($brands);
                            }
                            #Variants product
                            $variants_data = get_posts(array('post_type' => 'product_variation', 'post_parent' => $product_id));
                            if (isset($variants_data) && !empty($variants_data)) {
                                $total_var_product = 0;
                                foreach ($variants_data as $variant_data) {
                                    $option = array(1 => 'one', 2 => 'two', 3 => 'three', 4 => 'four', 5 => 'five', 6 => 'six', 7 => 'seven', 8 => 'eight', 9 => 'nine', 10 => 'ten');
                                    $variants_detail = get_post_meta($variant_data->ID);
                                    if (@empty($variants_detail['_sku'][0])) {
                                        $variants_detail['_sku'][0] = 'sku_' . $variant_data->ID;
                                    }
                                    $variants_detail['_sku'][0] = linksync_removespaces_sku_orderProduct($variants_detail['_sku'][0]);
                                    update_post_meta($variant_data->ID, '_sku', $variants_detail['_sku'][0]);
                                    $variant['sku'] = html_entity_decode($variants_detail['_sku'][0]);
                                    //SKU(unique Key)
                                    #Name/Title Check
                                    if (get_option('ps_name_title') == 'on') {
                                        $variant['name'] = html_entity_decode($variant_data->post_title);
                                    }
                                    #quantity
                                    if (@$variants_detail['_stock_status'][0] == 'instock') {
                                        $variant['quantity'] = @$variants_detail['_stock'][0];
                                    }
                                    // Price with Tax
                                    if (get_option('ps_price') == 'on') {
                                        if (isset($variants_detail['_tax_status'][0]) && $variants_detail['_tax_status'][0] == 'taxable') {
                                            # Product with TAX
                                            $taxname = empty($variants_detail['_tax_class'][0]) ? 'standard-tax' : $variants_detail['_tax_class'][0];
                                            $response_taxes = linksyn_get_tax_details($taxname);
                                            if ($response_taxes['result'] == 'success') {
                                                $variant['tax_name'] = html_entity_decode($response_taxes['data']['tax_name']);
                                                $variant['tax_rate'] = $response_taxes['data']['tax_rate'];
                                                $taxsetup = true;
                                            }
                                        }
                                        if ($excluding_tax == 'on') {
                                            # https://www.evernote.com/shard/s144/sh/e63f527b-903f-4002-8f00-313ff0652290/d9c1e0ce5a95800a
                                            if ($taxsetup) {
                                                if (isset($variants_detail['_regular_price'][0]) && !empty($variants_detail['_regular_price'][0])) {
                                                    //cost price:_regular_price
                                                    $regular_price = (double) $variants_detail['_regular_price'][0];
                                                    // Get Tax_value
                                                    $tax_rate = (double) $variant['tax_rate'];
                                                    $tax_value = (double) ($regular_price * $tax_rate);
                                                    //sell price:_regular_price
                                                    if ($display_retail_price_tax_inclusive == '1') {
                                                        $price_variant = $variants_detail['_regular_price'][0] + $tax_value;
                                                    } elseif ($display_retail_price_tax_inclusive == '0') {
                                                        $price_variant = $variants_detail['_regular_price'][0];
                                                    }
                                                    $variant['sell_price'] = str_replace(',', '', $price_variant);
                                                    $variant['list_price'] = str_replace(',', '', $price_variant);
                                                    $variant['tax_value'] = $tax_value;
                                                }
                                            } else {
                                                // excluding tax off and tax not enabled in woocomerce
                                                if (isset($variants_detail['_regular_price'][0]) && !empty($variants_detail['_regular_price'][0])) {
                                                    //sell price:_regular_price
                                                    $variant['sell_price'] = str_replace(',', '', $variants_detail['_regular_price'][0]);
                                                    $variant['list_price'] = str_replace(',', '', $variants_detail['_regular_price'][0]);
                                                }
                                            }
                                        } else {
                                            // No effect on price
                                            if (isset($variants_detail['_regular_price'][0]) && !empty($variants_detail['_regular_price'][0])) {
                                                $regular_price = (double) $variants_detail['_regular_price'][0];
                                                //                                                 Get Tax_value
                                                $tax_rate = (double) $variant['tax_rate'];
                                                $tax_value = $regular_price - $regular_price / (1 + $tax_rate);
                                                if ($display_retail_price_tax_inclusive == '1') {
                                                } elseif ($display_retail_price_tax_inclusive == '0') {
                                                    $variants_detail['_regular_price'][0] = $variants_detail['_regular_price'][0] - $tax_value;
                                                }
                                                //sell price:_regular_price
                                                $variant['sell_price'] = str_replace(',', '', $variants_detail['_regular_price'][0]);
                                                $variant['list_price'] = str_replace(',', '', $variants_detail['_regular_price'][0]);
                                                $variant['tax_value'] = $tax_value;
                                            }
                                        }
                                    }
                                    // ATTRIBUTE && VARIANTS
                                    $attributes_select = mysql_query("SELECT * FROM `" . $wpdb->prefix . "woocommerce_attribute_taxonomies`") or die(mysql_error());
                                    $check = 1;
                                    // $variants_detail['attribute_pa_' . strtolower($attributes['attribute_name'])][0]
                                    if (mysql_num_rows($attributes_select) != 0) {
                                        $keys = array_keys($variants_detail);
                                        if (false !== stripos(implode("\n", $keys), "attribute_pa_")) {
                                            while ($attributes = mysql_fetch_assoc($attributes_select)) {
                                                if (isset($variants_detail['attribute_pa_' . strtolower($attributes['attribute_name'])]) && !empty($variants_detail['attribute_pa_' . strtolower($attributes['attribute_name'])])) {
                                                    $attribute_name = str_replace('pa_', '', $attributes['attribute_name']);
                                                    $attribute_query = mysql_query("SELECT attribute_label FROM `" . $wpdb->prefix . "woocommerce_attribute_taxonomies` WHERE `attribute_name` = '" . $attribute_name . "'");
                                                    if (mysql_num_rows($attribute_query) != 0) {
                                                        $attribute_name_result = mysql_fetch_assoc($attribute_query);
                                                        $name = $attribute_name_result['attribute_label'];
                                                    }
                                                    $variant['option_' . $option[$check] . '_name'] = isset($name) ? $name : '';
                                                    $query = mysql_query("SELECT name FROM `" . $wpdb->base_prefix . "terms` WHERE `slug` = '" . $variants_detail['attribute_pa_' . strtolower($attributes['attribute_name'])][0] . "'");
                                                    if (mysql_num_rows($query) != 0) {
                                                        $attribute_value = mysql_fetch_assoc($query);
                                                        $value = $attribute_value['name'];
                                                    }
                                                    $variant['option_' . $option[$check] . '_value'] = isset($value) ? $value : '';
                                                    $check++;
                                                }
                                            }
                                        } else {
                                            if (isset($post_detail['_product_attributes'][0]) && !empty($post_detail['_product_attributes'][0])) {
                                                $_product_attributes = unserialize($post_detail['_product_attributes'][0]);
                                                foreach ($_product_attributes as $attribute_value) {
                                                    $attributeName = $attribute_value['name'];
                                                    $_attribute = explode('|', $attribute_value['value']);
                                                    $value = trim($_attribute[$total_var_product]);
                                                    $variant['option_' . $option[$check] . '_name'] = isset($attributeName) ? $attributeName : '';
                                                    $variant['option_' . $option[$check] . '_value'] = isset($value) ? $value : '';
                                                    $check++;
                                                }
                                            }
                                        }
                                    } else {
                                        if (isset($post_detail['_product_attributes'][0]) && !empty($post_detail['_product_attributes'][0])) {
                                            $_product_attributes = unserialize($post_detail['_product_attributes'][0]);
                                            foreach ($_product_attributes as $attribute_value) {
                                                $attributeName = $attribute_value['name'];
                                                $_attribute = explode('|', $attribute_value['value']);
                                                $value = trim($_attribute[$total_var_product]);
                                                $variant['option_' . $option[$check] . '_name'] = isset($attributeName) ? $attributeName : '';
                                                $variant['option_' . $option[$check] . '_value'] = isset($value) ? $value : '';
                                                $check++;
                                            }
                                        }
                                    }
                                    #qunantity-----UPDATE--variant---
                                    if (get_option('ps_quantity') == 'on') {
                                        if (get_option('ps_wc_to_vend_outlet') == 'on') {
                                            $getoutlets = get_option('wc_to_vend_outlet_detail');
                                            if (isset($getoutlets) && !empty($getoutlets)) {
                                                $outlets = explode('|', $getoutlets);
                                                if (isset($variants_detail['_stock'][0]) && !empty($variants_detail['_stock'][0])) {
                                                    $variant['outlets'] = array(array('name' => $outlets[0], 'quantity' => $variants_detail['_stock'][0]));
                                                } else {
                                                    $variant['outlets'] = array(array('name' => html_entity_decode($outlets[0]), 'quantity' => NULL));
                                                }
                                            } else {
                                                $variant['outlets'] = NULL;
                                            }
                                        }
                                    } else {
                                        $variant['outlets'] = array(array('quantity' => NULL));
                                    }
                                    $product['variants'][] = $variant;
                                    $total_var_product++;
                                }
                            }
                            $data = json_encode($product);
                            $response = $apicall->linksync_postProduct($data);
                            linksync_class::add('Product Sync Woo to Vend', 'success', 'Product synced SKU:' . $product['sku'], $LAIDKey);
                        }
                    }
                }
            }
        }
    }
}
示例#9
0
        linksync_jQuery1('#response').removeClass('error').addClass('updated').html("<?php 
    echo $response;
    ?>
").fadeIn().delay(3000).fadeOut(4000);
                   
    </script>
    <?php 
}
if (isset($_POST['apikey_delete'])) {
    $api_key = explode('|', $_POST['id']);
    $table_name = $wpdb->prefix . 'linksync_laidKey';
    $where = array('id' => $api_key[0]);
    if ($wpdb->delete($table_name, $where, $where_format = null)) {
        if (get_option('linksync_laid') == $api_key[1]) {
            update_option('linksync_laid', '');
            linksync_class::releaseOptions();
        }
    }
}
?>
<div id="tiptip_holder" style="margin:187px 1px 1px 643px  !important;display: none;" class="tip_top">
    <div id="tiptip_arrow" style="margin-left: 74.5px; margin-top: 47px;"><div id="tiptip_arrow_inner"></div></div>
    <div id="tiptip_content">The linksync API Key is a unique key that's created when you link two apps via the linksync dashboard. You need a valid API Key for this linkysnc extension to work.
    </div>
</div>
<div id="myModal" class="reveal-modal">
    <form method="POST" name="f1" action="">
        <center><span style="color: #0074a2;font-size: 18px;">Enter the API Key</span></center>
        <hr>
        <div style="float: left;font-size: 14px;color: #0074a2; text-align: right; margin-top: 4px;">API Key*:</div>
        <div style="float: left;margin-left: 10px;">
示例#10
0
 public function importOrderToWoocommerce($orders)
 {
     if (isset($orders) && !empty($orders)) {
         $order_status = get_option('order_vend_to_wc');
         //Order Status from order config setting
         foreach ($orders['orders'] as $order) {
             if (isset($order['id']) && !empty($order['id'])) {
                 $OrderIds = get_option("Vend_orderIDs");
                 if (isset($OrderIds) && !empty($OrderIds)) {
                     $Ids = unserialize($OrderIds);
                 } else {
                     $Ids = array();
                 }
                 if (!in_array($order['id'], $Ids)) {
                     update_option('Vend_orderIDs', serialize(array_merge($Ids, array($order['id']))));
                     $order_data = array('post_name' => 'order-' . date('M-d-Y-hi-a'), 'post_type' => 'shop_order', 'post_title' => date('M d, Y @ h:i A'), 'post_excerpt' => 'Source: ' . ucfirst($order['source']) . ' Order #' . $order['orderId'], 'post_status' => $order_status, 'ping_status' => 'closed', 'comment_status' => 'open');
                     $order_id = wp_insert_post($order_data, true);
                     // create order
                     if (is_wp_error($order_id)) {
                         $order->errors = $order_id;
                     } else {
                         if (isset($order['payment']['transactionNumber']) && !empty($order['payment']['transactionNumber'])) {
                             add_post_meta($order_id, 'transaction_id', $order['payment']['transactionNumber'], true);
                         }
                         /* ---------------------------------------Payment Mapping --------------------------------- */
                         if (isset($order['payment']['retailer_payment_type_id']) && !empty($order['payment']['retailer_payment_type_id'])) {
                             $all_payment = get_option('vend_to_wc_payments');
                             if (isset($all_payment) && !empty($all_payment)) {
                                 $explode_payment = explode(',', $all_payment);
                                 foreach ($explode_payment as $payments_method) {
                                     $payment_method = explode('|', $payments_method);
                                     if (in_array($order['payment']['retailer_payment_type_id'], $payment_method)) {
                                         $gatways = new WC_Payment_Gateways();
                                         $payment = $gatways->get_available_payment_gateways();
                                         $wocoomercepayment = $payment_method[1];
                                         foreach ($payment as $payment_method_id => $payment_method_title) {
                                             if ($payment_method_title->title == $wocoomercepayment) {
                                                 add_post_meta($order_id, '_payment_method_title', $wocoomercepayment, true);
                                                 add_post_meta($order_id, '_payment_method', $payment_method_id, true);
                                             }
                                         }
                                     }
                                 }
                             }
                         }
                         $customer_import = get_option('vend_to_wc_customer');
                         if (isset($customer_import) && $customer_import == 'customer_data') {
                             if (isset($order['billingAddress'])) {
                                 add_post_meta($order_id, '_billing_first_name', isset($order['billingAddress']['firstName']) ? $order['billingAddress']['firstName'] : NULL, true);
                                 add_post_meta($order_id, '_billing_last_name', isset($order['billingAddress']['lastName']) ? $order['billingAddress']['lastName'] : NULL, true);
                                 add_post_meta($order_id, '_billing_company', isset($order['billingAddress']['company']) ? $order['billingAddress']['company'] : NULL, true);
                                 add_post_meta($order_id, '_billing_address_1', isset($order['billingAddress']['street1']) ? $order['billingAddress']['street1'] : NULL, true);
                                 add_post_meta($order_id, '_billing_address_2', isset($order['billingAddress']['street2']) ? $order['billingAddress']['street2'] : NULL, true);
                                 add_post_meta($order_id, '_billing_city', isset($order['billingAddress']['city']) ? $order['billingAddress']['city'] : NULL, true);
                                 add_post_meta($order_id, '_billing_postcode', isset($order['billingAddress']['postalCode']) ? $order['billingAddress']['postalCode'] : NULL, true);
                                 add_post_meta($order_id, '_billing_country', isset($order['billingAddress']['country']) ? $order['billingAddress']['country'] : NULL, true);
                                 add_post_meta($order_id, '_billing_state', isset($order['billingAddress']['state']) ? $order['billingAddress']['state'] : NULL, true);
                                 add_post_meta($order_id, '_billing_phone', isset($order['billingAddress']['phone']) ? $order['billingAddress']['phone'] : NULL, true);
                             }
                             if (isset($order['deliveryAddress'])) {
                                 add_post_meta($order_id, '_shipping_first_name', isset($order['deliveryAddress']['firstName']) ? $order['deliveryAddress']['firstName'] : NULL, true);
                                 add_post_meta($order_id, '_shipping_last_name', isset($order['deliveryAddress']['lastName']) ? $order['deliveryAddress']['lastName'] : NULL, true);
                                 add_post_meta($order_id, '_shipping_company', isset($order['deliveryAddress']['company']) ? $order['deliveryAddress']['company'] : NULL, true);
                                 add_post_meta($order_id, '_shipping_address_1', isset($order['deliveryAddress']['street1']) ? $order['deliveryAddress']['street1'] : NULL, true);
                                 add_post_meta($order_id, '_shipping_address_2', isset($order['deliveryAddress']['street2']) ? $order['deliveryAddress']['street2'] : NULL, true);
                                 add_post_meta($order_id, '_shipping_city', isset($order['deliveryAddress']['city']) ? $order['deliveryAddress']['city'] : NULL, true);
                                 add_post_meta($order_id, '_shipping_postcode', isset($order['deliveryAddress']['postalCode']) ? $order['deliveryAddress']['postalCode'] : NULL, true);
                                 add_post_meta($order_id, '_shipping_country', isset($order['deliveryAddress']['country']) ? $order['deliveryAddress']['country'] : NULL, true);
                                 add_post_meta($order_id, '_shipping_state', isset($order['deliveryAddress']['state']) ? $order['deliveryAddress']['state'] : NULL, true);
                             }
                             if (isset($order['primary_email'])) {
                                 require_once ABSPATH . 'wp-includes/user.php';
                                 require_once ABSPATH . 'wp-includes/pluggable.php';
                                 $user_email = $order['primary_email'];
                                 $user_name = $order['billingAddress']['firstName'] . ' ' . $order['billingAddress']['lastName'];
                                 $user_id = email_exists($user_email);
                                 $email_password = false;
                                 if (!$user_id) {
                                     $user_password = wp_generate_password(12, false);
                                     $user_id = wp_create_user($user_name, $user_password, $user_email);
                                     update_user_option($user_id, 'default_password_nag', true, true);
                                     $email_password = true;
                                     $message = " Username: {$user_name}\n Password: {$user_password}\n " . wp_login_url();
                                     if (isset($order['billingAddress'])) {
                                         add_user_meta($user_id, 'billing_first_name', isset($order['billingAddress']['firstName']) ? $order['billingAddress']['firstName'] : NULL, true);
                                         add_user_meta($user_id, 'billing_last_name', isset($order['billingAddress']['lastName']) ? $order['billingAddress']['lastName'] : NULL, true);
                                         add_user_meta($user_id, 'billing_company', isset($order['billingAddress']['company']) ? $order['billingAddress']['company'] : NULL, true);
                                         add_user_meta($user_id, 'billing_address_1', isset($order['billingAddress']['street1']) ? $order['billingAddress']['street1'] : NULL, true);
                                         add_user_meta($user_id, 'billing_address_2', isset($order['billingAddress']['street2']) ? $order['billingAddress']['street2'] : NULL, true);
                                         add_user_meta($user_id, 'billing_city', isset($order['billingAddress']['city']) ? $order['billingAddress']['city'] : NULL, true);
                                         add_user_meta($user_id, 'billing_postcode', isset($order['billingAddress']['postalCode']) ? $order['billingAddress']['postalCode'] : NULL, true);
                                         add_user_meta($user_id, 'billing_country', isset($order['billingAddress']['country']) ? $order['billingAddress']['country'] : NULL, true);
                                         add_user_meta($user_id, 'billing_state', isset($order['billingAddress']['state']) ? $order['billingAddress']['state'] : NULL, true);
                                         add_user_meta($user_id, 'billing_phone', isset($order['billingAddress']['phone']) ? $order['billingAddress']['phone'] : NULL, true);
                                     }
                                     if (isset($order['deliveryAddress'])) {
                                         add_user_meta($user_id, 'shipping_first_name', isset($order['deliveryAddress']['firstName']) ? $order['deliveryAddress']['firstName'] : NULL, true);
                                         add_user_meta($user_id, 'shipping_last_name', isset($order['deliveryAddress']['lastName']) ? $order['deliveryAddress']['lastName'] : NULL, true);
                                         add_user_meta($user_id, 'shipping_company', isset($order['deliveryAddress']['company']) ? $order['deliveryAddress']['company'] : NULL, true);
                                         add_user_meta($user_id, 'shipping_address_1', isset($order['deliveryAddress']['street1']) ? $order['deliveryAddress']['street1'] : NULL, true);
                                         add_user_meta($user_id, 'shipping_address_2', isset($order['deliveryAddress']['street2']) ? $order['deliveryAddress']['street2'] : NULL, true);
                                         add_user_meta($user_id, 'shipping_city', isset($order['deliveryAddress']['city']) ? $order['deliveryAddress']['city'] : NULL, true);
                                         add_user_meta($user_id, 'shipping_postcode', isset($order['deliveryAddress']['postalCode']) ? $order['deliveryAddress']['postalCode'] : NULL, true);
                                         add_user_meta($user_id, 'shipping_country', isset($order['deliveryAddress']['country']) ? $order['deliveryAddress']['country'] : NULL, true);
                                         add_user_meta($user_id, 'shipping_state', isset($order['deliveryAddress']['state']) ? $order['deliveryAddress']['state'] : NULL, true);
                                     }
                                     wp_mail($user_email, 'Your username and password', $message);
                                     $user = new WP_User($user_id);
                                     $user->set_role('customer');
                                 }
                                 add_post_meta($order_id, '_customer_user', $user_id);
                             }
                         }
                         if (isset($order['total']) && !empty($order['total'])) {
                             if (isset($order['total_tax'])) {
                                 $order['total'] = $order['total_tax'] + $order['total'];
                             }
                             add_post_meta($order_id, '_order_total', $order['total'], true);
                         }
                         if (isset($order['taxes_included']) && $order['taxes_included'] == true) {
                             add_post_meta($order_id, '_order_tax', $order['total_tax'], true);
                         }
                         if (isset($order['updated_at']) && !empty($order['updated_at'])) {
                             add_post_meta($order_id, '_completed_date', $order['updated_at'], true);
                         }
                         if (isset($order['id']) && !empty($order['id'])) {
                             add_post_meta($order_id, '_vend_orderid', $order['id'], true);
                         }
                         if (isset($order['currency']) && !empty($order['currency'])) {
                             add_post_meta($order_id, '_order_currency', $order['currency'], true);
                         }
                         // billing info
                         if (isset($order['user_name']) && !empty($order['user_name'])) {
                             add_post_meta($order_id, '_billing_email', $order['user_name'], true);
                         }
                         $i = 0;
                         foreach ($order['products'] as $products) {
                             $product_id = $this->isReferenceExists_order($products['sku']);
                             if ($product_id['result'] == 'success' && !empty($product_id['data'])) {
                                 $product = new WC_Product($product_id['data']);
                                 if ($product->post->post_type == 'product_variation') {
                                     $variant_id = $product->id;
                                     $product->id = $product->post->post_parent;
                                 }
                                 $wcproduct = $product->post;
                                 if ($product) {
                                     // add item
                                     $item_id = wc_add_order_item($order_id, array('order_item_name' => $wcproduct->post_title, 'order_item_type' => 'line_item'));
                                     if ($item_id) {
                                         $line_tax = array();
                                         $line_subtax = array();
                                         // add item meta data
                                         if (isset($products['price']) && !empty($products['price'])) {
                                             $products['price'] = (double) ($products['price'] * $products['quantity']);
                                         }
                                         $line_total = (double) $products['price'];
                                         wc_add_order_item_meta($item_id, '_qty', $products['quantity']);
                                         //Product Order Quantity From Vend
                                         wc_add_order_item_meta($item_id, '_product_id', $product->id);
                                         wc_add_order_item_meta($item_id, '_line_total', $line_total);
                                         wc_add_order_item_meta($item_id, '_variation_id', isset($variant_id) ? $variant_id : '');
                                         $result_tax_class = $this->linksync_tax_classes_vend_to_wc($products['taxId']);
                                         if ($result_tax_class['result'] == 'success') {
                                             $tax_class = $result_tax_class['tax_class'];
                                         }
                                         wc_add_order_item_meta($item_id, '_tax_class', isset($tax_class) ? $tax_class : '');
                                         wc_add_order_item_meta($item_id, '_line_tax', $products['taxValue']);
                                         wc_add_order_item_meta($item_id, '_line_subtotal', $products['price']);
                                         wc_add_order_item_meta($item_id, '_line_subtotal_tax', $products['taxValue']);
                                         $line_tax['total'][1] = $products['taxValue'];
                                         $line_subtax['subtotal'][1] = $products['taxValue'];
                                         $line_tax_data = array_merge($line_tax, $line_subtax);
                                         wc_add_order_item_meta($item_id, '_line_tax_data', $line_tax_data);
                                         if (isset($variant_id) && !empty($variant_id)) {
                                             global $wpdb;
                                             $query = mysql_query("SELECT meta_key,meta_value FROM `" . $wpdb->prefix . "postmeta` WHERE post_id='" . $variant_id . "' AND meta_key LIKE 'attribute_pa_%'");
                                             while ($result = mysql_fetch_assoc($query)) {
                                                 $meta_key = str_replace('attribute_', '', $result['meta_key']);
                                                 wc_add_order_item_meta($item_id, $meta_key, $result['meta_value']);
                                             }
                                         }
                                     }
                                 } else {
                                     $order->errors = 'Product SKU (' . $order->{$item_id} . ') not found.';
                                 }
                             } elseif ($products['sku'] == 'shipping') {
                                 $taxes = array();
                                 // add item
                                 $shipping_id = wc_add_order_item($order_id, array('order_item_name' => $products['title'], 'order_item_type' => 'shipping'));
                                 if ($shipping_id) {
                                     wc_add_order_item_meta($shipping_id, 'cost', $products['price']);
                                     wc_add_order_item_meta($shipping_id, 'method_id', '');
                                     wc_add_order_item_meta($shipping_id, 'taxes', '');
                                     add_post_meta($order_id, '_order_shipping', $products['price']);
                                     add_post_meta($order_id, '_order_shipping_tax', $products['taxValue']);
                                     $shippping_tax_amount = $products['taxValue'];
                                     $taxes[1] = $products['taxValue'];
                                     wc_add_order_item_meta($shipping_id, 'taxes', $taxes);
                                 }
                             } elseif ($products['sku'] == 'vend-discount') {
                                 add_post_meta($order_id, '_cart_discount', $products['price']);
                             }
                             /* ---------------------------------------Tax Mapping --------------------------------- */
                             if ($products['sku'] != 'shipping' || $products['sku'] != 'vend-discount') {
                                 if ($i == 0) {
                                     $tax_class_name = $this->linksync_tax_classes_vend_to_wc($products['taxId']);
                                     if ($tax_class_name['result'] == 'success') {
                                         // add item
                                         $tax_id = wc_add_order_item($order_id, array('order_item_name' => $tax_class_name['tax_class_name'] . '-' . $tax_class_name['tax_rate_id'], 'order_item_type' => 'tax'));
                                         if ($tax_id) {
                                             wc_add_order_item_meta($tax_id, 'rate_id', $tax_class_name['tax_rate_id']);
                                             wc_add_order_item_meta($tax_id, 'label', $tax_class_name['tax_class_name']);
                                             wc_add_order_item_meta($tax_id, 'compound', 0);
                                             $tax_amount = $order['total_tax'];
                                             wc_add_order_item_meta($tax_id, 'tax_amount', isset($tax_amount) ? $tax_amount : 0);
                                             wc_add_order_item_meta($tax_id, 'shipping_tax_amount', isset($shippping_tax_amount) ? $shippping_tax_amount : 0);
                                         }
                                     }
                                     $i++;
                                 }
                             }
                         }
                     }
                     linksync_class::add('Order Sync Vend to Woo', 'success', 'Vend Order no:' . $order['orderId'] . ', Woo Order no:' . $order_id, get_option('linksync_laid'));
                 }
             }
         }
     }
     return true;
 }
示例#11
0
        padding-left: 25px;
    }
</style>
<script type="text/javascript" src="../wp-content/plugins/linksync/jquery-tiptip/jquery.tipTip.min.js"></script> 
<link rel="stylesheet" href="../wp-content/plugins/linksync/css/reveal.css">	
<script type="text/javascript" src="../wp-content/plugins/linksync/jquery-tiptip/jquery.reveal.js"></script>
<!--<link rel="stylesheet" id="woocommerce_admin_styles-css" href="../wp-content/plugins/linksync/css/admin.css" type="text/css" media="all">-->
<div class="wrap"> 
    <div id="response" style="padding: 15px; margin-top: 25px; display: none;"></div>
    <?php 
global $wpdb;
$linksync = new linksync();
//Send log feature
$testMode = get_option('linksync_test');
$LAIDKey = get_option('linksync_laid');
$apicall = new linksync_class($LAIDKey, $testMode);
if (isset($_GET['setting']) && $_GET['page']) {
    if ($_GET['setting'] == 'logs' && $_GET['page'] == 'linksync') {
        if (isset($_POST['clearlog'])) {
            $empty = mysql_query("TRUNCATE TABLE `" . $wpdb->prefix . "linksync_log`");
            if ($empty) {
                $response = "Logs Clear successfully!";
            } else {
                $response = "Error:Unable to Clear Logs Details";
            }
            ?>
<script>
                    jQuery('#response').removeClass('error').addClass('updated').html("<?php 
            echo $response;
            ?>
").fadeIn().delay(3000).fadeOut(4000);
示例#12
0
 public static function checkForConnection($api_key)
 {
     global $wpdb;
     // Start - Saving API Key and Connecting to Server
     # On Save button clicking , it should be saved and connected as well.
     $LAIDKey = trim($api_key);
     $testMode = get_option('linksync_test');
     if (isset($testMode) && $testMode == 'on') {
         $testMode = 'on';
     } else {
         $testMode = 'off';
     }
     update_option('linksync_test', $testMode);
     $apicall = new linksync_class($LAIDKey, $testMode);
     $result = $apicall->testConnection();
     if (isset($result) && !empty($result)) {
         if (isset($result['errorCode']) && !empty($result['userMessage'])) {
             mysql_query("UPDATE `" . $wpdb->prefix . "linksync_laidKey` SET status='Invalid' WHERE api_key='{$LAIDKey}'");
             update_option('linksync_status', "Inactive");
             update_option('linksync_last_test_time', current_time('mysql'));
             update_option('linksync_connected_url', "");
             update_option('linksync_connectedto', '');
             update_option('linksync_connectionwith', '');
             update_option('linksync_addedfile', '');
             update_option('linksync_frequency', $result['userMessage']);
             linksync_class::add('checkAPI Key', 'Fail', $result['userMessage'], $LAIDKey);
             $class1 = 'updated';
             $class2 = 'error';
             $response['error'] = 'Connection Not Established because of ' . $result['userMessage'];
         } else {
             if (isset($result['app']) && !empty($result['app'])) {
                 $app_name = self::appid_app($result['app']);
                 if (isset($app_name) && !empty($app_name['success'])) {
                     update_option('linksync_connectionwith', $app_name['success']);
                     $app_name_status = 'Active';
                 } else {
                     update_option('linksync_connectionwith', 'Supplied API Key not valid');
                     $checkKey = 'Supplied API Key not valid';
                     $app_name_status = 'Inactive';
                 }
             }
             if (isset($result['connected_app']) && !empty($result['connected_app'])) {
                 $connected_app = self::appid_app($result['connected_app']);
                 if (isset($connected_app) && !empty($connected_app['success'])) {
                     update_option('linksync_connectedto', $connected_app['success']);
                     $status = 'Active';
                 } else {
                     update_option('linksync_connectedto', "The supplied API Key is not valid for use with linksync for WooCommerce.");
                     $checkKey = 'Supplied API Key not valid for use with WooCommerce';
                     $status = 'Inactive';
                 }
             }
             if (isset($status) && isset($app_name_status) && $status == 'Active' && $app_name_status == 'Active') {
                 // if (isset($result['connected_app_version']) && !empty($result['connected_app_version'])) {woocommerce/woocommerce.php
                 $plugin_file = dirname(__FILE__) . '/linksync.php';
                 $plugin_data = get_plugin_data($plugin_file, $markup = true, $translate = true);
                 $linksync_version = $plugin_data['Version'];
                 update_option('linksync_version', $linksync_version);
                 $webhook = $apicall->webhookConnection(content_url() . '/plugins/linksync/update.php?c=' . get_option('webhook_url_code'), $linksync_version, 'no');
                 if (isset($webhook) && !empty($webhook)) {
                     if (isset($webhook['result']) && $webhook['result'] == 'success') {
                         linksync_class::add('WebHookConnection', 'success', 'Connected to a file ' . content_url() . '/plugins/linksync/update.php?c=' . get_option('webhook_url_code'), $LAIDKey);
                         update_option('linksync_addedfile', '<a href="' . content_url() . '/plugins/linksync/update.php?c=' . get_option('webhook_url_code') . '">' . content_url() . '/linksync/update.php?c=' . get_option('webhook_url_code') . '</a>');
                     }
                 }
                 //}
                 if (isset($result['time']) && !empty($result['time'])) {
                     $server_response = strtotime($result['time']);
                     $server_time = time();
                     $time = $server_response - $server_time;
                     linksync_class::add('Time Offset', 'success', 'Server Response:' . $result['time'] . ' Current Server Time:' . date("Y-m-d H:i:s") . ' Time Offset: ' . date("H:i:s", abs($time)), $LAIDKey);
                     update_option('linksync_time_offset', $time);
                 }
                 if (get_option('linksync_connectionwith') == 'Vend' || get_option('linksync_connectedto') == 'Vend') {
                     // Add Default setting into DB
                     $response_outlets = $apicall->linksync_getOutlets();
                     if (@get_option('ps_outlet') == 'on') {
                         #VEND TO WC
                         if (isset($response_outlets) && !empty($response_outlets)) {
                             if (isset($response_outlets['errorCode']) && !empty($response_outlets['userMessage'])) {
                                 update_option('ps_outlet_details', 'off');
                                 $response_ = $response_outlets['userMessage'];
                                 linksync_class::add('linksync_getOutlets', 'fail', $response_, $LAIDKey);
                             } else {
                                 foreach ($response_outlets['outlets'] as $key => $value) {
                                     $oulets["{$key}"] = $value['id'];
                                 }
                                 $ouletsdb = implode('|', $oulets);
                                 update_option('ps_outlet_details', $ouletsdb);
                                 update_option('ps_outlet', 'on');
                             }
                         } else {
                             $class2 = 'updated';
                             $class1 = 'error';
                             $response_ = 'Error in getting outlets';
                             echo "<br>";
                             echo "<span style='color:red';>" . $response_ . "</span>";
                             echo "<br>";
                         }
                     }
                     if (@get_option('ps_wc_to_vend_outlet') == 'on') {
                         if (isset($response_outlets['errorCode']) && !empty($response_outlets['userMessage'])) {
                             update_option('wc_to_vend_outlet_detail', 'off');
                             $response_ = $response_outlets['userMessage'];
                             linksync_class::add('linksync_getOutlets', 'fail', $response_, $LAIDKey);
                         } else {
                             $two_way_wc_to_vend = $response_outlets['outlets'][0]['name'] . '|' . $response_outlets['outlets'][0]['id'];
                             update_option('wc_to_vend_outlet_detail', $two_way_wc_to_vend);
                             update_option('ps_wc_to_vend_outlet', 'on');
                         }
                     }
                     /*
                      * display_retail_price_tax_inclusive(0 or 1)
                      */
                     $vend_config = $apicall->getVendConfig();
                     if (isset($vend_config) && !empty($vend_config)) {
                         if (!isset($vend_config['errorCode'])) {
                             update_option('linksync_tax_inclusive', $vend_config['display_retail_price_tax_inclusive']);
                         } else {
                             update_option('linksync_tax_inclusive', '');
                             echo "<span style='color:red;font-weight:bold;'>Error in getting VEND Config : {$vend_config['userMessage']}</span><br>";
                         }
                     }
                 }
                 mysql_query("UPDATE `" . $wpdb->prefix . "linksync_laidKey` SET status='connected' WHERE api_key='{$LAIDKey}'");
                 update_option('linksync_status', 'Active');
                 update_option('linksync_last_test_time', current_time('mysql'));
                 update_option('linksync_connected_url', get_option('linksync_connected_url'));
                 update_option('linksync_frequency', 'Valid API Key');
                 update_option('laid_message', isset($result['message']) ? $result['message'] : null);
                 linksync_class::add('isConnected', 'success', 'Connected URL is ' . get_option('linksync_connected_url'), $LAIDKey);
                 $class2 = 'updated';
                 $class1 = 'error';
                 update_option('linksync_laid', $LAIDKey);
                 $response['success'] = 'Connection is established Successfully!!';
             } else {
                 mysql_query("UPDATE `" . $wpdb->prefix . "linksync_laidKey` SET status='Invalid' WHERE api_key='{$LAIDKey}'");
                 update_option('linksync_status', "Inactive");
                 update_option('linksync_last_test_time', current_time('mysql'));
                 update_option('linksync_connected_url', get_option('linksync_connected_url'));
                 update_option('linksync_addedfile', '');
                 update_option('linksync_connectedto', "The supplied API Key is not valid for use with linksync for WooCommerce.");
                 update_option('linksync_connectionwith', 'Supplied API Key not valid');
                 update_option('linksync_frequency', 'Invalid API Key');
                 linksync_class::add('checkAPI Key', 'fail', 'Invalid API Key', '-');
                 $class1 = 'updated';
                 $class2 = 'error';
                 $response['error'] = "The supplied API Key is not valid for use with linksync for WooCommerce.";
             }
         }
     } else {
         mysql_query("UPDATE `" . $wpdb->prefix . "linksync_laidKey` SET status='Invalid' WHERE api_key='{$LAIDKey}'");
         update_option('linksync_status', "Inactive");
         update_option('linksync_last_test_time', current_time('mysql'));
         update_option('linksync_connected_url', get_option('linksync_connected_url'));
         update_option('linksync_addedfile', '');
         update_option('linksync_connectedto', "The supplied API Key is not valid for use with linksync for WooCommerce.");
         update_option('linksync_connectionwith', 'Supplied API Key not valid');
         update_option('linksync_frequency', 'Invalid API Key');
         linksync_class::add('checkAPI Key', 'fail', 'Invalid API Key', '-');
         $class1 = 'updated';
         $class2 = 'error';
         $response['error'] = "The supplied API Key is not valid for use with linksync for WooCommerce.";
     }
     return $response;
 }
<?php

$LAIDKey = get_option('linksync_laid');
$testMode = get_option('linksync_test');
$apicall = new linksync_class($LAIDKey, $testMode);
$gatway = new WC_Payment_Gateways();
# Get Payment Types
for ($count_payment = 1; $count_payment <= 3; $count_payment++) {
    $payment = $apicall->linksync_getpaymentTypes();
    if (isset($payment) && !empty($payment)) {
        break;
    }
}
# Get Taxes
for ($count_taxes = 1; $count_taxes <= 3; $count_taxes++) {
    $taxes = $apicall->linksync_getTaxes();
    if (isset($taxes) && !empty($taxes)) {
        break;
    }
}
#Get Order Status
for ($count_order_Status = 1; $count_order_Status <= 3; $count_order_Status++) {
    $order_Status = $apicall->linksync_get_order_statuses();
    if (isset($order_Status) && !empty($order_Status)) {
        break;
    }
}
if (isset($_POST['save_order_sync_setting'])) {
    //Woocommers To VEND
    if (isset($_POST['order_sync_type']) && !empty($_POST['order_sync_type'])) {
        update_option('order_sync_type', $_POST['order_sync_type']);
示例#14
0
                linksync_OrderjQuery('#order_sync_setting').slideDown(500);
            } else if (linksync_OrderjQuery("#QBO_to_wc_sync_id").is(":checked")) {
                linksync_OrderjQuery('#order_sync_QBO_to_wc').slideDown(500);
                linksync_OrderjQuery('#order_sync_wc_to_QBO').slideUp(500);
                linksync_OrderjQuery('#order_sync_setting').slideDown(500);
            } else {
                linksync_OrderjQuery('#order_sync_setting').slideDown(500);
                linksync_OrderjQuery('#order_sync_wc_to_QBO').slideDown(500);
                linksync_OrderjQuery('#order_sync_QBO_to_wc').slideDown(500);
            }
        });
 });
</script><?php 
$LAIDKey = get_option('linksync_laid');
$testMode = get_option('linksync_test');
$apicall = new linksync_class($LAIDKey, $testMode);
$gatway = new WC_Payment_Gateways();
$payment = $apicall->linksync_QuickBook_payment();
$taxes = $apicall->linksync_QuickBook_taxes();
$order_Status = $apicall->linksync_get_order_statuses();
if (isset($_POST['save_order_sync_setting'])) {
    //Woocommers To QBO
    if (isset($_POST['order_sync_type_QBO']) && !empty($_POST['order_sync_type_QBO'])) {
        update_option('order_sync_type_QBO', $_POST['order_sync_type_QBO']);
    }
    if (isset($_POST['order_status_wc_to_QBO'])) {
        $order_status_wc_to_QBO = implode('|', $_POST['order_status_wc_to_QBO']);
        update_option('order_status_wc_to_QBO', isset($order_status_wc_to_QBO) ? $order_status_wc_to_QBO : 'off');
    } else {
        update_option('order_status_wc_to_QBO', 'off');
    }