-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsubmit.php
125 lines (100 loc) · 2.63 KB
/
submit.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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
<?php
// is cURL installed
if (!function_exists('curl_init')){
die('Sorry cURL is not installed!');
}
$comparison_id = isset($_GET['comp_id']) ? trim($_GET['comp_id']) : '';
$winner = isset($_GET['winner']) ? trim($_GET['winner']) : '';
if (!$comparison_id)
{
die('No comparison id specified!');
}
if (!$winner)
{
die('No winner specified!');
}
$i = 0;
$api_key = "lYfF8kAmPyRZ0Wr0G_9R";
$api_url = "http://$api_key:[email protected]/api/v1";
$user_id = "";
session_start();
$email = isset($_SESSION['email']) ? trim($_SESSION['email']) : '';
if (isset($_SESSION['user']))
{
$user_id = $_SESSION['user'];
}
else
{
die('No user specified!');
}
function submit_result($result)
{
global $api_url;
// create a new cURL resource handle
$ch = curl_init();
$url = $api_url."/discovery_game/comparison/result";
// Set URL
curl_setopt($ch, CURLOPT_URL, $url);
// Set POST parameters
$data = array('user' => $result['user_id'], 'comparison' => $result['comparison'], 'winner' => $result['winner']);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
// Include header in result
curl_setopt($ch, CURLOPT_HEADER, 0);
// Return the data
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// 10 second timeout
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
// Fetch resource
$result = curl_exec($ch);
// Close the cURL
curl_close($ch);
return $result;
}
if ($email)
{
if (isset($_SESSION['picks']) && is_array($_SESSION['picks']))
{
foreach ($_SESSION['picks'] as $old_pick)
{
submit_result(array('user_id' => $user_id, 'comparison' => $old_pick['comparison'], 'winner' => $old_pick['winner']));
}
$_SESSION['picks'] = 0;
}
$result = submit_result(array('user_id' => $user_id, 'comparison' => $comparison_id, 'winner' => $winner));
echo $result;
}
else
{
$data = array('comparison' => $comparison_id, 'winner' => $winner);
if (isset($_SESSION['picks']) && is_array($_SESSION['picks']))
{
array_push($_SESSION['picks'], $data);
}
else
{
$_SESSION['picks'] = array();
array_push($_SESSION['picks'], $data);
}
if (isset($_SESSION['pick-count']))
{
$_SESSION['pick-count'] += 1;
}
else
{
$_SESSION['pick-count'] = 1;
}
$message = array("response" => "success");
$message["record"] = json_encode($_SESSION['picks']);
if (sizeof($_SESSION['picks']) > 10)
{
$_SESSION['picks'] = array_slice($_SESSION['picks'], -5, 5);
}
if (($_SESSION['pick-count'] % 5) == 0)
{
$message["warn"] = "email";
}
$message["saved-to"] = "session";
echo json_encode($message);
}
?>