PluginProbe ʕ •ᴥ•ʔ
Brevo – Email, SMS, Web Push, Chat, and more. / 2.9.5
Brevo – Email, SMS, Web Push, Chat, and more. v2.9.5
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 9 years ago function.wp_mail.php 8 years ago index.php 8 years ago mailin.php 9 years ago sendinblue.php 9 years ago sib-api-manager.php 7 years ago sib-form-preview.php 8 years ago sib-sms-code.php 8 years ago table-forms.php 8 years ago
sendinblue.php
169 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 * Do CURL request with authorization
28 */
29
30 private function do_request($input)
31 {
32 $input['key'] = $this->api_key;
33 $input = http_build_query($input);
34 $ch = curl_init($this->base_url."?".$input);
35 if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') {
36 // Windows only over-ride
37 curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
38 }
39 curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
40 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
41 curl_setopt($ch, CURLOPT_HEADER, 0);
42 $data = curl_exec($ch);
43 if(curl_errno($ch))
44 {
45 echo 'Curl error: ' . curl_error($ch). '\n';
46 }
47 curl_close($ch);
48 return json_decode($data,true);
49 }
50 public function identify($data)
51 {
52 $data['sib_type'] = 'identify';
53
54 if (!array_key_exists('name',$data)) {
55 $data['name'] = "Contact Created";
56 }
57 $url = (isset($_SERVER['HTTPS']) ? "https" : "http") . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
58 if (!array_key_exists('url',$data)) {
59 $data['url'] = $url;
60 }
61 if (isset($_COOKIE['session_id']) && $_COOKIE['session_id'] != '') {
62 $data['session_id'] = $_COOKIE['session_id'];
63 }
64 $parsed = parse_url($url);
65 $host_parts = explode('.', $parsed['host']);
66 $domain = implode('.', array_slice($host_parts, count($host_parts)-2));
67 //store email_id cookie
68 setcookie("email_id",$_COOKIE['email_id'] = $data['email_id'],time() + 86400,"/",$domain);
69 return $this->do_request($data);
70 }
71
72 public function track($data)
73 {
74 $data['sib_type'] = 'track';
75 $url = (isset($_SERVER['HTTPS']) ? "https" : "http") . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
76 if (!array_key_exists('url',$data)) {
77 $data['url'] = $url;
78 }
79
80 if (!array_key_exists('sib_name',$data)) {
81 if (array_key_exists('name',$data)) {
82 $data['sib_name'] = $data['name'];
83 }
84 }
85
86 //get email cookie
87
88 if (isset($_COOKIE['email_id']) && $_COOKIE['email_id'] != '') {
89 $data['email_id'] = $_COOKIE['email_id'];
90 }
91 if (isset($_COOKIE['session_id']) && $_COOKIE['session_id'] != '') {
92 $data['session_id'] = $_COOKIE['session_id'];
93 }
94
95 //store email cookie
96 $obj = $this->do_request($data);
97 if (isset($obj['email_id']) && $obj['email_id'] != '') {
98 $parsed = parse_url($url);
99 $host_parts = explode('.', $parsed['host']);
100 $domain = implode('.', array_slice($host_parts, count($host_parts)-2));
101 //store email_id cookie
102 setcookie("email_id",$_COOKIE['email_id'] = $obj['email_id'],time() + 86400,"/",$domain);
103 }
104 }
105 public function page($data)
106 {
107 $data['sib_type'] = 'page';
108 $url = (isset($_SERVER['HTTPS']) ? "https" : "http") . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
109 if (!array_key_exists('url',$data)) {
110 $data['url'] = $url;
111 }
112 //get email cookie
113 if (isset($_COOKIE['email_id']) && $_COOKIE['email_id'] != '') {
114 $data['email_id'] = $_COOKIE['email_id'];
115 }
116 if (isset($_COOKIE['session_id']) && $_COOKIE['session_id'] != '') {
117 $data['session_id'] = $_COOKIE['session_id'];
118 }
119 //referrer
120 if (!array_key_exists('referrer',$data) && array_key_exists('HTTP_REFERER',$_SERVER)) {
121 $data['referrer'] = $_SERVER['HTTP_REFERER'];
122 }
123 //pathname
124 if (!array_key_exists('pathname',$data)) {
125 $data['pathname'] = $_SERVER['REQUEST_URI'];
126 }
127
128 //name
129 if (!array_key_exists('name',$data)) {
130 $data['name'] = $_SERVER['REQUEST_URI'];
131 }
132
133 //store email cookie
134 $obj = $this->do_request($data);
135 if (isset($obj['email_id']) && $obj['email_id'] != '') {
136 $parsed = parse_url($url);
137 $host_parts = explode('.', $parsed['host']);
138 $domain = implode('.', array_slice($host_parts, count($host_parts)-2));
139 //store email_id cookie
140 setcookie("email_id",$_COOKIE['email_id'] = $obj['email_id'],time() + 86400,"/",$domain);
141 }
142 }
143 public function trackLink($data)
144 {
145 $data['sib_type'] = 'trackLink';
146 //get email cookie
147 if (isset($_COOKIE['email_id']) && $_COOKIE['email_id'] != '') {
148 $data['email_id'] = $_COOKIE['email_id'];
149 }
150 if (isset($_COOKIE['session_id']) && $_COOKIE['session_id'] != '') {
151 $data['session_id'] = $_COOKIE['session_id'];
152 }
153 $url = (isset($_SERVER['HTTPS']) ? "https" : "http") . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
154 if (!array_key_exists('url',$data)) {
155 $data['url'] = $url;
156 }
157 //store email cookie
158 $obj = $this->do_request($data);
159 if (isset($obj['email_id']) && $obj['email_id'] != '') {
160 $parsed = parse_url($url);
161 $host_parts = explode('.', $parsed['host']);
162 $domain = implode('.', array_slice($host_parts, count($host_parts)-2));
163 //store email_id cookie
164 setcookie("email_id",$_COOKIE['email_id'] = $obj['email_id'],time() + 86400,"/",$domain);
165 }
166 }
167 }
168 ?>
169