forked from ballerina-attic/website
-
Notifications
You must be signed in to change notification settings - Fork 0
/
slackServiceCall.php
53 lines (42 loc) · 1.37 KB
/
slackServiceCall.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
<?php
define('SUBDOMAIN', 'ballerinalang');
define('TOKEN', 'xoxp-143486495379-142849113584-206744401269-56a37ae3b24756cb0bfa573b13c2286d');
$email = $_POST['email'];
$first = "";
$last = "";
$slackInviteUrl = 'https://' . SUBDOMAIN . '.slack.com/api/users.admin.invite?t=' . time();
$fields = array(
'email' => urlencode($email),
'first_name' => urlencode($first),
'token' => TOKEN,
'set_active' => urlencode('true'),
'_attempts' => '1'
);
// url-ify the data for the POST
$fields_string = '';
foreach ($fields as $key => $value) {
$fields_string .= $key . '=' . $value . '&';
}
rtrim($fields_string, '&');
// open connection
$ch = curl_init();
// set the url, number of POST vars, POST data
curl_setopt($ch, CURLOPT_URL, $slackInviteUrl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, count($fields));
curl_setopt($ch, CURLOPT_POSTFIELDS, $fields_string);
// exec
$replyRaw = curl_exec($ch);
$reply = json_decode($replyRaw, true);
if ($reply['ok'] == false) {
echo '<p style="font-family: \'Roboto\', sans-serif; color: #9d3d3d">';
echo 'Something went wrong, try again!';
echo '</p>';
} else {
echo '<p style="font-family: \'Roboto\', sans-serif; color: #719E6F">';
echo 'Invited successfully. Check your email. It should arrive within a couple minutes';
echo '</p>';
}
// close connection
curl_close($ch);
?>