Passed
Push — master ( c60248...c9ca19 )
by Greg
02:53
created

Pushover::push()   A

Complexity

Conditions 3
Paths 3

Size

Total Lines 20
Code Lines 9

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 3
eloc 9
nc 3
nop 5
dl 0
loc 20
rs 9.9666
c 0
b 0
f 0
1
<?php
2
namespace GJClasses;
3
4
use donatj\Pushover\Options;
5
use donatj\Pushover\Priority;
6
// use donatj\Pushover\Pushover;
7
use donatj\Pushover\Sounds;
8
9
class Pushover
10
{
11
    public function push($api_key, $user_key, $subject, $content, $url)
12
    {
13
        $push = new \GJClasses\Push('pushover');
14
        $type = $push->getPushType($url);
15
16
        if ($type == 'note') {
17
18
            $message = $this->pushNote($api_key, $user_key, $subject, $content);
19
20
        } elseif ($type == 'url') {
21
22
            $message = $this->pushUrl($api_key, $user_key, $subject, $content, $url);
23
24
        } else {
25
26
            $message = 'Push type incorrect or not specified';
27
28
        }
29
30
        return $message;
31
    }
32
33
    public function pushNote($api_key, $user_key, $subject, $content)
34
    {
35
        $push = new \donatj\Pushover\Pushover($api_key, $user_key);
36
        $push->send($content, array(
37
            Options::TITLE => $subject,
38
            Options::PRIORITY => Priority::HIGH,
39
            Options::SOUND => Sounds::ALIEN,
40
        )) or die('Message Failed');
41
        return 'Note Sent';
42
    }
43
44
    public function pushUrl($api_key, $user_key, $subject, $content, $url)
45
    {
46
        $push = new \donatj\Pushover\Pushover($api_key, $user_key);
47
        $push->send($content, array(
48
            Options::TITLE => $subject,
49
            Options::URL => $url,
50
            Options::PRIORITY => Priority::HIGH,
51
            Options::SOUND => Sounds::ALIEN,
52
        )) or die('Message Failed');
53
        return 'URL Sent';
54
    }
55
}
56