PluginProbe
AutomatorWP – No-Code Workflow Automation, Integration & Webhooks Plugin, now with AI / 6.0.3
AutomatorWP – No-Code Workflow Automation, Integration & Webhooks Plugin, now with AI v6.0.3
6.0.3 6.0.2 6.0.1 6.0.0 5.8.6 5.8.5 5.8.4 5.8.3 5.8.2 5.8.1 5.8.0 5.7.9.2 5.7.9.1 5.7.8 5.7.9 5.7.6 5.7.7 5.7.5 5.7.4 5.7.3 5.7.2 5.7.1 trunk 5.6.0 5.6.1 All 34 releases
← All changes | integrations/mail-mint/mail-mint.php +178 -0 5.8.4 → 6.0.3 View file →
@@ -1,0 +1,178 @@
1 +<?php
2 +/**
3 + * Plugin Name: AutomatorWP - Mail Mint
4 + * Plugin URI: https://automatorwp.com/add-ons/mail-mint/
5 + * Description: Connect AutomatorWP with Mail Mint
6 + * Version: 1.0.0
7 + * Author: AutomatorWP
8 + * Author URI: https://automatorwp.com/
9 + * Text Domain: automatorwp-mail-mint
10 + * Domain Path: /languages/
11 + * Requires at least: 4.4
12 + * Tested up to: 7.0
13 + * Requires PHP: 7.4
14 + * License: GNU AGPL v3.0 (http://www.gnu.org/licenses/agpl.txt)
15 + *
16 + * @package AutomatorWP\Mail_Mint
17 + * @author AutomatorWP
18 + * @copyright Copyright (c) AutomatorWP
19 + */
20 +
21 +// Exit if accessed directly
22 +if ( ! defined( 'ABSPATH' ) ) exit;
23 +
24 +final class AutomatorWP_Integration_Mail_Mint {
25 + /**
26 + * @var AutomatorWP_Integration_Mail_Mint $instance The one true AutomatorWP_Integration_Mail_Mint
27 + * @since 1.0.0
28 + */
29 + private static $instance;
30 +
31 + /**
32 + * Get active instance
33 + *
34 + * @access public
35 + * @since 1.0.0
36 + * @return AutomatorWP_Integration_Mail_Mint self::$instance
37 + */
38 + public static function instance() {
39 + if( !self::$instance ) {
40 + self::$instance = new AutomatorWP_Integration_Mail_Mint();
41 +
42 + if( ! self::$instance->pro_installed() ) {
43 +
44 + self::$instance->constants();
45 + self::$instance->includes();
46 +
47 + }
48 +
49 + self::$instance->hooks();
50 + }
51 +
52 + return self::$instance;
53 + }
54 +
55 + /**
56 + * Setup plugin constants
57 + *
58 + * @access private
59 + * @since 1.0.0
60 + * @return void
61 + */
62 + private function constants() {
63 + // Plugin version
64 + define( 'AUTOMATORWP_MAIL_MINT_VER', '1.0.0' );
65 +
66 + // Plugin file
67 + define( 'AUTOMATORWP_MAIL_MINT_FILE', __FILE__ );
68 +
69 + // Plugin path
70 + define( 'AUTOMATORWP_MAIL_MINT_DIR', plugin_dir_path( __FILE__ ) );
71 +
72 + // Plugin URL
73 + define( 'AUTOMATORWP_MAIL_MINT_URL', plugin_dir_url( __FILE__ ) );
74 + }
75 +
76 + /**
77 + * Include plugin files
78 + *
79 + * @access private
80 + * @since 1.0.0
81 + * @return void
82 + */
83 + private function includes() {
84 +
85 + if ( $this->meets_requirements() ) {
86 +
87 + // Functions
88 + require_once AUTOMATORWP_MAIL_MINT_DIR . 'includes/functions.php';
89 + require_once AUTOMATORWP_MAIL_MINT_DIR . 'includes/ajax-functions.php';
90 + require_once AUTOMATORWP_MAIL_MINT_DIR . 'includes/tags.php';
91 +
92 + // Triggers
93 + require_once AUTOMATORWP_MAIL_MINT_DIR . 'includes/triggers/user-contact-added.php';
94 + require_once AUTOMATORWP_MAIL_MINT_DIR . 'includes/triggers/tag-added.php';
95 +
96 + // Actions
97 + require_once AUTOMATORWP_MAIL_MINT_DIR . 'includes/actions/create-user-contact.php';
98 + require_once AUTOMATORWP_MAIL_MINT_DIR . 'includes/actions/user-add-tag.php';
99 +
100 + }
101 + }
102 +
103 + /**
104 + * Setup plugin hooks
105 + *
106 + * @access private
107 + * @since 1.0.0
108 + * @return void
109 + */
110 + private function hooks() {
111 +
112 + add_action( 'automatorwp_init', array( $this, 'register_integration' ) );
113 +
114 + }
115 +
116 + /**
117 + * Registers this integration with AutomatorWP
118 + *
119 + * @since 1.0.0
120 + */
121 + public function register_integration() {
122 +
123 + automatorwp_register_integration( 'mail_mint', array(
124 + 'label' => 'Mail Mint',
125 + 'icon' => AUTOMATORWP_MAIL_MINT_URL . 'assets/mail-mint.svg',
126 + ) );
127 +
128 + }
129 +
130 + /**
131 + * Check if all plugin requirements are met
132 + *
133 + * @since 1.0.0
134 + *
135 + * @return bool
136 + */
137 + private function meets_requirements() {
138 +
139 + if ( ! class_exists( 'AutomatorWP' ) ) {
140 + return false;
141 + }
142 +
143 + if ( ! defined( 'MRM_VERSION' ) ) {
144 + return false;
145 + }
146 +
147 + return true;
148 +
149 + }
150 +
151 + /**
152 + * Check if the pro version of this integration is installed
153 + *
154 + * @since 1.0.0
155 + *
156 + * @return bool True if pro version installed
157 + */
158 + private function pro_installed() {
159 +
160 + if ( ! class_exists( 'AutomatorWP_Mail_Mint' ) ) {
161 + return false;
162 + }
163 +
164 + return true;
165 +
166 + }
167 +}
168 +
169 +/**
170 + * The main function responsible for returning the one true AutomatorWP_Integration_Mail_Mint instance
171 + *
172 + * @since 1.0.0
173 + * @return AutomatorWP_Integration_Mail_Mint
174 + */
175 +function AutomatorWP_Integration_Mail_Mint() {
176 + return AutomatorWP_Integration_Mail_Mint::instance();
177 +}
178 +add_action( 'automatorwp_pre_init', 'AutomatorWP_Integration_Mail_Mint' );