C:\xampp\htdocs\landing\wp-content\plugins\mailchimp-for-wp\integrations\wpforms\class-wpforms.php


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
<?php

defined
'ABSPATH' ) or exit;

/**
 * Class MC4WP_WPForms_Integration
 *
 * @ignore
 */
class MC4WP_WPForms_Integration extends MC4WP_Integration {


    
/**
     * @var string
     */
    
public $name 'WPForms';

    
/**
     * @var string
     */
    
public $description 'Subscribe visitors from your WPForms forms.';


    
/**
     * Add hooks
     */
    
public function add_hooks() {
        
add_action'wpforms_process', array( $this'listen_to_wpforms' ), 20);
    }

    
/**
     * @return bool
     */
    
public function is_installed() {
        return 
defined'WPFORMS_VERSION' );
    }

    
/**
     * @since 3.0
     * @return array
     */
    
public function get_ui_elements() {
        return array();
    }

    public function 
listen_to_wpforms$fields$entry$form_data ) {
        foreach ( 
$fields as $field_id => $field ) {
            if ( 
$field['type'] === 'mailchimp' && (int) $field['value_raw'] === ) {
                return 
$this->subscribe_from_wpforms$field_id$fields$form_data );
            }
        }
    }

    public function 
subscribe_from_wpforms$checkbox_field_id$fields$form_data ) {
        foreach ( 
$fields as $field ) {
            if ( 
$field['type'] === 'email' ) {
                
$email_address $field['value'];
            }
        }

        
$mailchimp_list_id      $form_data['fields'][ $checkbox_field_id ]['mailchimp_list'];
        
$this->options['lists'] = array( $mailchimp_list_id );

        if ( ! empty( 
$email_address ) ) {
            return 
$this->subscribe( array( 'EMAIL' => $email_address ), $form_data['id'] );
        }
    }

    
/**
     * @param int $form_id
     * @return string
     */
    
public function get_object_link$form_id ) {
        return 
'<a href="' admin_urlsprintf'admin.php?page=wpforms-builder&view=fields&form_id=%d'$form_id ) ) . '">WPForms</a>';
    }
}
x

Windows NT KPTV 6.2 build 9200 (Windows Server 2012 Datacenter Edition) i586