author | hurons@caf4f556-3d62-0410-8435-a86758001935 |
Tue, 02 Feb 2010 15:44:16 +0000 | |
branch | wordpress |
changeset 132 | 4d4862461b8d |
parent 123 | 561aa6d282f6 |
permissions | -rw-r--r-- |
123
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
1 |
<?php |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
2 |
|
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
3 |
class Prowl |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
4 |
{ |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
5 |
var $apikey; |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
6 |
var $application; |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
7 |
|
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
8 |
function Prowl($apikey, $application) |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
9 |
{ |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
10 |
$this->apikey = $apikey; |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
11 |
$this->application = $application; |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
12 |
// $this->verify(); |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
13 |
} |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
14 |
|
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
15 |
function add($priority, $event, $description) |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
16 |
{ |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
17 |
$options = array( |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
18 |
'apikey' => $this->apikey, |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
19 |
'priority' => $priority, |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
20 |
'application' => urlencode($this->application), |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
21 |
'event' => urlencode($event), |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
22 |
'description' => urlencode($description) |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
23 |
); |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
24 |
|
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
25 |
$response = $this->request('https://prowl.weks.net/publicapi/add', $options); |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
26 |
return $this->getresult($response); |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
27 |
} |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
28 |
|
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
29 |
function getresult($response) { |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
30 |
$response = str_replace("\n", " ", $response); |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
31 |
|
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
32 |
if(preg_match("/code=\"200\"/i", $response)) |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
33 |
return true; |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
34 |
else |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
35 |
{ |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
36 |
preg_match("/<error.*?>(.*?)<\/error>/i", $response, $out); |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
37 |
return $out[1]; |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
38 |
} |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
39 |
} |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
40 |
|
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
41 |
function verify() |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
42 |
{ |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
43 |
$options = array('apikey' => $this->apikey); |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
44 |
return $this->getresult( $this->request('https://prowl.weks.net/publicapi/verify', $options) ); |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
45 |
} |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
46 |
|
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
47 |
function request($file, $options) |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
48 |
{ |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
49 |
$url = $file; |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
50 |
|
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
51 |
$first = true; |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
52 |
foreach ($options as $key => $value) { |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
53 |
$url .= ($first ? '?' : '&') . $key . '=' . $value; |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
54 |
$first = false; |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
55 |
} |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
56 |
|
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
57 |
$ch = curl_init($url); |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
58 |
curl_setopt($ch, CURLOPT_HEADER, false); |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
59 |
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
60 |
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
61 |
curl_setopt($ch, CURLOPT_TIMEOUT, 10); |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
62 |
$response = curl_exec($ch); |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
63 |
curl_close($ch); |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
64 |
|
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
65 |
return $response; |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
66 |
} |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
67 |
} |
561aa6d282f6
pre production version :
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
68 |
?> |