woocommerce-active-campaign.php
2.46 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
<?php
/**
* Plugin Name: WooCommerce - Active Campaign Integration
* Plugin URI: http://activewoo.com
* Version: 0.3.9
* Description: Syncs WooCommerce purchases to Active Campaign. Requires an Active Campaign account to work.
* Author: Jason Kadlec: CrazyEffective.com
* Author URI: http://www.crazyeffective.com/
*/
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
if ( ! class_exists( 'WC_Active_Woo' ) ) :
class WC_Active_Woo {
/**
* Construct the plugin.
*/
public function __construct() {
add_action( 'plugins_loaded', array( $this, 'init' ) );
}
/**
* Initialize the plugin.
*/
public function init() {
// Checks if WooCommerce is installed.
if ( class_exists( 'WC_Integration' ) ) {
// Include our integration class and other scripts.
require_once( plugin_dir_path( __FILE__ ) . 'vendor/wp-background-processing/wp-background-processing.php');
require_once( plugin_dir_path( __FILE__ ) . 'vendor/aw-update-checker/aw-update-checker.php' );
require_once( plugin_dir_path( __FILE__ ) . 'vendor/active-campaign/ActiveCampaign.class.php' );
require_once( plugin_dir_path( __FILE__ ) . 'includes/aw-functions.php' );
require_once( plugin_dir_path( __FILE__ ) . 'includes/class-aw-woocommerce-integration.php' );
require_once( plugin_dir_path( __FILE__ ) . 'includes/class-aw-subscriptions-integration.php' );
require_once( plugin_dir_path( __FILE__ ) . 'includes/class-aw-license.php' );
require_once( plugin_dir_path( __FILE__ ) . 'includes/class-aw-bg-sync.php' );
// Register the integration.
add_filter( 'woocommerce_integrations', array( $this, 'add_integration' ) );
$MyUpdateChecker = PucFactory::buildUpdateChecker(
'http://activewoo.com/aw_update/?action=get_metadata&slug=woocommerce-active-campaign',
__FILE__,
'woocommerce-active-campaign'
);
if ( class_exists('WC_Subscriptions') ) {
AW_WC_Subscription_Integration::init();
}
} else {
// throw an admin error if you like
echo '<div class="error"><p>There was an error loading the plugin.</p></div>';
}
}
/**
* Add a new integration to WooCommerce.
*/
public function add_integration( $integrations ) {
$integrations[] = 'WC_Integration_Active_Woo';
return $integrations;
}
}
new WC_Active_Woo();
endif;