PluginProbe
Kit (formerly ConvertKit) – Email Newsletter, Email Marketing, Membership, Subscribers and Landing Pages / 3.4.4
Kit (formerly ConvertKit) – Email Newsletter, Email Marketing, Membership, Subscribers and Landing Pages v3.4.4
3.4.4 3.4.3 3.4.2 3.4.1 3.4.0 3.3.9 3.3.8 3.3.7 3.3.6 3.3.5 3.3.4 3.3.3 3.3.2 3.3.1 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.2.7 2.2.8 2.2.9 2.3.0 All 197 releases
convertkit / admin / importers / class-convertkit-admin-importer-campaignmonitor.php

class-convertkit-admin-importer-campaignmonitor.php in Kit (formerly ConvertKit) – Email Newsletter, Email Marketing, Membership, Subscribers and Landing Pages 3.4.4, at admin/importers/class-convertkit-admin-importer-campaignmonitor.php

99 lines 2.1 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * ConvertKit Admin Importer CampaignMonitor class.
4 *
5 * @package ConvertKit
6 * @author ConvertKit
7 */
8
9 /**
10 * Import and migrate data from CampaignMonitor to Kit.
11 *
12 * @package ConvertKit
13 * @author ConvertKit
14 */
15 class ConvertKit_Admin_Importer_CampaignMonitor extends ConvertKit_Admin_Importer {
16
17 /**
18 * Holds the programmatic name of the importer (lowercase, no spaces).
19 *
20 * @since 3.1.7
21 *
22 * @var string
23 */
24 public $name = 'campaignmonitor';
25
26 /**
27 * Holds the title of the importer (for display in the importer list).
28 *
29 * @since 3.1.7
30 *
31 * @var string
32 */
33 public $title = 'CampaignMonitor';
34
35 /**
36 * Holds the shortcode name for ActiveCampaign forms.
37 *
38 * @since 3.1.7
39 *
40 * @var string
41 */
42 public $shortcode_name = 'cm_form';
43
44 /**
45 * Holds the ID attribute name for CampaignMonitor forms.
46 *
47 * @since 3.1.7
48 *
49 * @var string
50 */
51 public $shortcode_id_attribute = 'form_id';
52
53 /**
54 * Constructor
55 *
56 * @since 3.1.7
57 */
58 public function __construct() {
59
60 // Register this as an importer, if CampaignMonitor forms exist.
61 add_filter( 'convertkit_get_form_importers', array( $this, 'register' ) );
62
63 }
64
65 /**
66 * Returns an array of CampaignMonitor form IDs and titles.
67 *
68 * @since 3.1.7
69 *
70 * @return array
71 */
72 public function get_forms() {
73
74 // Forms are cached in the Plugin Settings.
75 $settings = get_option( 'forms_for_campaign_monitor_forms' );
76
77 // Bail if the CampaignMonitor Plugin Settings are not set.
78 if ( ! $settings ) {
79 return array();
80 }
81
82 // Build array of forms.
83 $forms = array();
84 foreach ( $settings as $form_id => $form ) {
85 // $form is a Campaign Monitor forms\core\Form object. It'll be a __PHP_Incomplete_Class if the Campaign Monitor plugin is not active.
86 // To consistently access the protected form name property, we have to cast to an array.
87 $form = (array) $form;
88
89 // Access the protected form name property.
90 // When casting __PHP_Incomplete_Class to an array, protected properties are prefixed with \0*\0.
91 $forms[ $form_id ] = $form["\0*\0name"];
92 }
93
94 return $forms;
95
96 }
97
98 }
99