151 lines
4.8 KiB
PHP
151 lines
4.8 KiB
PHP
<?php
|
|
|
|
/**
|
|
* The public-facing functionality of the plugin.
|
|
*
|
|
* @link https://example.com
|
|
* @since 1.0.0
|
|
*
|
|
* @package Polkurier
|
|
* @subpackage Polkurier/public
|
|
*/
|
|
|
|
/**
|
|
* The public-facing functionality of the plugin.
|
|
*
|
|
* Defines the plugin name, version, and two examples hooks for how to
|
|
* enqueue the public-facing stylesheet and JavaScript.
|
|
*
|
|
* @package Polkurier
|
|
* @subpackage Polkurier/public
|
|
* @author Polkurier <test@example.com>
|
|
*/
|
|
class Polkurier_Public
|
|
{
|
|
|
|
/**
|
|
* The ID of this plugin.
|
|
*
|
|
* @since 1.0.0
|
|
* @access private
|
|
* @var string $plugin_name The ID of this plugin.
|
|
*/
|
|
private $plugin_name;
|
|
|
|
/**
|
|
* The version of this plugin.
|
|
*
|
|
* @since 1.0.0
|
|
* @access private
|
|
* @var string $version The current version of this plugin.
|
|
*/
|
|
private $version;
|
|
|
|
/**
|
|
* Initialize the class and set its properties.
|
|
*
|
|
* @since 1.0.0
|
|
* @param string $plugin_name The name of the plugin.
|
|
* @param string $version The version of this plugin.
|
|
*/
|
|
public function __construct($plugin_name, $version)
|
|
{
|
|
$this->plugin_name = $plugin_name;
|
|
$this->version = $version;
|
|
|
|
}
|
|
|
|
/**
|
|
* Register the stylesheets for the public-facing side of the site.
|
|
*
|
|
* @since 1.0.0
|
|
*/
|
|
public function enqueue_styles()
|
|
{
|
|
/**
|
|
* This function is provided for demonstration purposes only.
|
|
*
|
|
* An instance of this class should be passed to the run() function
|
|
* defined in Polkurier_Loader as all of the hooks are defined
|
|
* in that particular class.
|
|
*
|
|
* The Polkurier_Loader will then create the relationship
|
|
* between the defined hooks and the functions defined in this
|
|
* class.
|
|
*/
|
|
|
|
// wp_enqueue_style($this->plugin_name, plugin_dir_url(__FILE__) . 'css/polkurier-public.css', array(), $this->version, 'all');
|
|
|
|
}
|
|
|
|
/**
|
|
* Register the JavaScript for the public-facing side of the site.
|
|
*
|
|
* @since 1.0.0
|
|
*/
|
|
public function enqueue_scripts()
|
|
{
|
|
/**
|
|
* This function is provided for demonstration purposes only.
|
|
*
|
|
* An instance of this class should be passed to the run() function
|
|
* defined in Polkurier_Loader as all of the hooks are defined
|
|
* in that particular class.
|
|
*
|
|
* The Polkurier_Loader will then create the relationship
|
|
* between the defined hooks and the functions defined in this
|
|
* class.
|
|
*/
|
|
|
|
// wp_enqueue_script($this->plugin_name, plugin_dir_url(__FILE__) . 'js/polkurier-public.śjs', array('jquery'), $this->version, false);
|
|
|
|
}
|
|
|
|
public function register_shipping_method()
|
|
{
|
|
require_once plugin_dir_path(__FILE__) . '../includes/WC_Polkurier_Shipping_Method.php';
|
|
$methods['polkurier_method'] = 'WC_Polkurier_Shipping_Method';
|
|
return $methods;
|
|
}
|
|
|
|
public function create_polkurier_order($order)
|
|
{
|
|
$polkurier_package_id = $_REQUEST["shipping_method"][0];
|
|
$current_date = gmdate('Y-m-d\TH:i:s.u\Z');
|
|
$price = $order->get_shipping_total();
|
|
$receiver = array(
|
|
'companyName' => $order->get_shipping_company(),
|
|
'name' => $order->get_shipping_first_name(),
|
|
'surname' => $order->get_shipping_last_name(),
|
|
'street' => $order->get_shipping_address_1(),
|
|
'number' => $order->get_shipping_address_2(),
|
|
'city' => $order->get_shipping_city(),
|
|
'zipCode' => $order->get_shipping_postcode(),
|
|
'phoneNumber' => $order->get_billing_phone(),
|
|
);
|
|
$sender = array(
|
|
'companyName' => get_option('polkurier_sender_company'),
|
|
'name' => get_option('polkurier_sender_name'),
|
|
'surname' => get_option('polkurier_sender_surname'),
|
|
'street' => get_option('polkurier_sender_street'),
|
|
'number' => get_option('polkurier_sender_number'),
|
|
'city' => get_option('polkurier_sender_city'),
|
|
'zipCode' => get_option('polkurier_sender_zipcode'),
|
|
'phoneNumber' => get_option('polkurier_phone_number'),
|
|
);
|
|
$payFromBalance = get_option('polkurier_use_polkurier_balance');
|
|
$params = array(
|
|
'postDate' => $current_date,
|
|
'receiveDate' => $current_date,
|
|
'size' => $order->get_shipping_method(),
|
|
'sender' => $sender,
|
|
'receiver' => $receiver,
|
|
'payFromBalance' => $payFromBalance,
|
|
'setting' => $polkurier_package_id,
|
|
);
|
|
require_once plugin_dir_path(__FILE__) . '../includes/PolkurierAPI.php';
|
|
$api = new PolkurierAPI(get_option('polkurier_apikey'));
|
|
$api->createPackage($params);
|
|
}
|
|
}
|