1
0
mirror of synced 2025-03-06 00:56:09 +03:00
woocommerce-module/src/retailcrm.php

89 lines
3.2 KiB
PHP
Raw Normal View History

<?php
/**
* Version: 3.5.4
* WC requires at least: 3.0
2019-03-06 10:09:12 +03:00
* WC tested up to: 3.5.5
* Plugin Name: WooCommerce RetailCRM
* Plugin URI: https://wordpress.org/plugins/woo-retailcrm/
* Description: Integration plugin for WooCommerce & RetailCRM
* Author: RetailDriver LLC
2018-05-28 12:56:19 +03:00
* Author URI: http://retailcrm.pro/
* Text Domain: retailcrm
*/
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly
}
if (!class_exists( 'WC_Integration_Retailcrm')) :
/**
* Class WC_Integration_Retailcrm
*/
class WC_Integration_Retailcrm {
private static $instance;
public static function get_instance() {
if (null === self::$instance) {
self::$instance = new self();
}
return self::$instance;
}
/**
* Construct the plugin.
*/
public function __construct() {
2018-08-22 15:54:47 +03:00
$this->load_plugin_textdomain();
2018-08-22 15:54:47 +03:00
if (class_exists( 'WC_Integration' ) ) {
2019-03-20 15:51:31 +03:00
require_once(dirname(__FILE__ ) . '/include/abstracts/class-wc-retailcrm-abstracts-settings.php');
require_once(dirname(__FILE__ ) . '/include/abstracts/class-wc-retailcrm-abstracts-data.php');
require_once(dirname(__FILE__ ) . '/include/abstracts/class-wc-retailcrm-abstracts-address.php');
require_once(dirname(__FILE__ ) . '/include/order/class-wc-retailcrm-order.php');
require_once(dirname(__FILE__ ) . '/include/order/class-wc-retailcrm-order-payment.php');
require_once(dirname(__FILE__ ) . '/include/order/class-wc-retailcrm-order-item.php');
require_once(dirname(__FILE__ ) . '/include/order/class-wc-retailcrm-order-address.php');
require_once(dirname(__FILE__ ) . '/include/customer/class-wc-retailcrm-customer-address.php');
2018-08-22 15:54:47 +03:00
require_once(dirname(__FILE__ ) . '/include/class-wc-retailcrm-base.php');
require_once(dirname(__FILE__ ) . '/include/functions.php');
add_filter('woocommerce_integrations', array( $this, 'add_integration'));
} else {
2018-08-22 15:54:47 +03:00
add_action('admin_notices', array($this, 'woocommerce_missing_notice'));
}
}
2018-08-22 15:54:47 +03:00
public function woocommerce_missing_notice() {
echo '<div class="error"><p>Woocommerce is not installed</p></div>';
}
public function load_plugin_textdomain() {
2018-08-22 15:54:47 +03:00
load_plugin_textdomain('retailcrm', false, dirname(plugin_basename(__FILE__)) . '/languages/');
}
/**
* Add a new integration to WooCommerce.
*
* @param $integrations
*
* @return array
*/
public function add_integration( $integrations ) {
$integrations[] = 'WC_Retailcrm_Base';
return $integrations;
}
}
if (!class_exists('WC_Retailcrm_Plugin')) {
require_once (dirname(__FILE__) . '/include/class-wc-retailcrm-plugin.php');
}
$plugin = WC_Retailcrm_Plugin::getInstance(__FILE__);
$plugin->register_activation_hook();
$plugin->register_deactivation_hook();
2018-05-28 12:56:19 +03:00
add_action('plugins_loaded', array('WC_Integration_Retailcrm', 'get_instance'), 0);
endif;