PluginProbe ʕ •ᴥ•ʔ
Brevo – Email, SMS, Web Push, Chat, and more. / 3.0.1
Brevo – Email, SMS, Web Push, Chat, and more. v3.0.1
2.9.13 2.9.14 2.9.15 2.9.16 2.9.17 2.9.18 2.9.4 2.9.5 2.9.6 2.9.7 2.9.8 2.9.9 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.0.7 3.0.9 3.1.0 3.1.1 3.1.10 3.1.11 3.1.12 3.1.13 3.1.14 3.1.15 3.1.16 3.1.2 3.1.20 3.1.21 3.1.22 3.1.23 3.1.24 3.1.25 3.1.26 3.1.27 3.1.28 3.1.29 3.1.3 3.1.30 3.1.31 3.1.32 3.1.33 3.1.34 3.1.35 3.1.36 3.1.37 3.1.38 3.1.39 3.1.4 3.1.40 3.1.41 3.1.42 3.1.43 3.1.44 3.1.45 3.1.46 3.1.47 3.1.48 3.1.49 3.1.5 3.1.50 3.1.51 3.1.52 3.1.53 3.1.54 3.1.55 3.1.56 3.1.57 3.1.58 3.1.59 3.1.6 3.1.60 3.1.61 3.1.62 3.1.63 3.1.64 3.1.65 3.1.66 3.1.67 3.1.68 3.1.69 3.1.7 3.1.70 3.1.71 3.1.72 3.1.73 3.1.74 3.1.75 3.1.76 3.1.77 3.1.78 3.1.79 3.1.8 3.1.80 3.1.81 3.1.82 3.1.83 3.1.84 3.1.85 3.1.86 3.1.87 3.1.88 3.1.89 3.1.9 3.1.90 3.1.91 3.1.92 3.1.93 3.1.94 3.1.95 3.1.96 3.1.97 3.1.98 3.2.0 3.2.1 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 3.2.9 3.3.0 3.3.1 3.3.2 3.3.3 3.3.4 3.3.5 trunk 1.0 1.5 2.0.8 2.9.10 2.9.11 2.9.12
mailin / inc / sendinblue.php
mailin / inc Last commit date
templates 5 years ago SendinblueApiClient.php 5 years ago function.wp_mail.php 5 years ago index.php 5 years ago mailin.php 5 years ago sendinblue.php 5 years ago sib-api-manager.php 5 years ago sib-form-preview.php 5 years ago sib-sms-code.php 5 years ago table-forms.php 5 years ago
sendinblue.php
159 lines
1 <?php
2 class Sendinblue
3 {
4 public $api_key;
5 public $base_url;
6 public $curl_opts = array();
7 public function __construct($api_key)
8 {
9 if(!function_exists('curl_init'))
10 {
11 throw new Exception('Sendinblue requires CURL module');
12 }
13 $this->base_url = 'https://in-automate.sendinblue.com/p';
14 $this->api_key = $api_key;
15 //create a session cookie
16 if (!array_key_exists('session_id',$_COOKIE)) {
17 $url = (isset($_SERVER['HTTPS']) ? "https" : "http") . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
18 $parsed = parse_url($url);
19 $host_parts = explode('.', $parsed['host']);
20 $domain = implode('.', array_slice($host_parts, count($host_parts)-2));
21 //store email_id cookie
22 setcookie("session_id",$_COOKIE['session_id'] = md5(uniqid(time())),time() + 86400,"/",$domain);
23 }
24
25 }
26
27 /**
28 * @param $input
29 * @return mixed
30 */
31 private function do_request($input)
32 {
33 $input['key'] = $this->api_key;
34 $url = $this->base_url . "?" . http_build_query($input);
35 $data = wp_remote_retrieve_body(wp_remote_request($url, ['method' => 'GET']));
36
37 return json_decode($data,true);
38 }
39
40 public function identify($data)
41 {
42 $data['sib_type'] = 'identify';
43
44 if (!array_key_exists('name',$data)) {
45 $data['name'] = "Contact Created";
46 }
47 $url = (isset($_SERVER['HTTPS']) ? "https" : "http") . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
48 if (!array_key_exists('url',$data)) {
49 $data['url'] = $url;
50 }
51 if (isset($_COOKIE['session_id']) && $_COOKIE['session_id'] != '') {
52 $data['session_id'] = $_COOKIE['session_id'];
53 }
54 $parsed = parse_url($url);
55 $host_parts = explode('.', $parsed['host']);
56 $domain = implode('.', array_slice($host_parts, count($host_parts)-2));
57 //store email_id cookie
58 setcookie("email_id",$_COOKIE['email_id'] = $data['email_id'],time() + 86400,"/",$domain);
59 return $this->do_request($data);
60 }
61
62 public function track($data)
63 {
64 $data['sib_type'] = 'track';
65 $url = (isset($_SERVER['HTTPS']) ? "https" : "http") . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
66 if (!array_key_exists('url',$data)) {
67 $data['url'] = $url;
68 }
69
70 if (!array_key_exists('sib_name',$data)) {
71 if (array_key_exists('name',$data)) {
72 $data['sib_name'] = $data['name'];
73 }
74 }
75
76 //get email cookie
77
78 if (isset($_COOKIE['email_id']) && $_COOKIE['email_id'] != '') {
79 $data['email_id'] = $_COOKIE['email_id'];
80 }
81 if (isset($_COOKIE['session_id']) && $_COOKIE['session_id'] != '') {
82 $data['session_id'] = $_COOKIE['session_id'];
83 }
84
85 //store email cookie
86 $obj = $this->do_request($data);
87 if (isset($obj['email_id']) && $obj['email_id'] != '') {
88 $parsed = parse_url($url);
89 $host_parts = explode('.', $parsed['host']);
90 $domain = implode('.', array_slice($host_parts, count($host_parts)-2));
91 //store email_id cookie
92 setcookie("email_id",$_COOKIE['email_id'] = $obj['email_id'],time() + 86400,"/",$domain);
93 }
94 }
95 public function page($data)
96 {
97 $data['sib_type'] = 'page';
98 $url = (isset($_SERVER['HTTPS']) ? "https" : "http") . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
99 if (!array_key_exists('url',$data)) {
100 $data['url'] = $url;
101 }
102 //get email cookie
103 if (isset($_COOKIE['email_id']) && $_COOKIE['email_id'] != '') {
104 $data['email_id'] = $_COOKIE['email_id'];
105 }
106 if (isset($_COOKIE['session_id']) && $_COOKIE['session_id'] != '') {
107 $data['session_id'] = $_COOKIE['session_id'];
108 }
109 //referrer
110 if (!array_key_exists('referrer',$data) && array_key_exists('HTTP_REFERER',$_SERVER)) {
111 $data['referrer'] = $_SERVER['HTTP_REFERER'];
112 }
113 //pathname
114 if (!array_key_exists('pathname',$data)) {
115 $data['pathname'] = $_SERVER['REQUEST_URI'];
116 }
117
118 //name
119 if (!array_key_exists('name',$data)) {
120 $data['name'] = $_SERVER['REQUEST_URI'];
121 }
122
123 //store email cookie
124 $obj = $this->do_request($data);
125 if (isset($obj['email_id']) && $obj['email_id'] != '') {
126 $parsed = parse_url($url);
127 $host_parts = explode('.', $parsed['host']);
128 $domain = implode('.', array_slice($host_parts, count($host_parts)-2));
129 //store email_id cookie
130 setcookie("email_id",$_COOKIE['email_id'] = $obj['email_id'],time() + 86400,"/",$domain);
131 }
132 }
133 public function trackLink($data)
134 {
135 $data['sib_type'] = 'trackLink';
136 //get email cookie
137 if (isset($_COOKIE['email_id']) && $_COOKIE['email_id'] != '') {
138 $data['email_id'] = $_COOKIE['email_id'];
139 }
140 if (isset($_COOKIE['session_id']) && $_COOKIE['session_id'] != '') {
141 $data['session_id'] = $_COOKIE['session_id'];
142 }
143 $url = (isset($_SERVER['HTTPS']) ? "https" : "http") . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
144 if (!array_key_exists('url',$data)) {
145 $data['url'] = $url;
146 }
147 //store email cookie
148 $obj = $this->do_request($data);
149 if (isset($obj['email_id']) && $obj['email_id'] != '') {
150 $parsed = parse_url($url);
151 $host_parts = explode('.', $parsed['host']);
152 $domain = implode('.', array_slice($host_parts, count($host_parts)-2));
153 //store email_id cookie
154 setcookie("email_id",$_COOKIE['email_id'] = $obj['email_id'],time() + 86400,"/",$domain);
155 }
156 }
157 }
158 ?>
159