Pushover::push()   A
last analyzed

Complexity

Conditions 3
Paths 3

Size

Total Lines 20
Code Lines 9

Duplication

Lines 0
Ratio 0 %

Importance

Changes 2
Bugs 0 Features 0
Metric Value
cc 3
eloc 9
c 2
b 0
f 0
nc 3
nop 6
dl 0
loc 20
rs 9.9666
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 = '', $priority = '0')
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, $priority);
19
20
        } elseif ($type == 'url') {
21
22
            $message = $this->pushUrl($api_key, $user_key, $subject, $content, $url, $priority);
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, $priority)
34
    {
35
        $push = new \donatj\Pushover\Pushover($api_key, $user_key);
36
        $push->send($content, array(
37
            Options::TITLE => $subject,
38
            Options::PRIORITY => $priority,
39
        )) or die('Message Failed');
40
        return 'Note Sent';
41
    }
42
43
    public function pushUrl($api_key, $user_key, $subject, $content, $url, $priority)
44
    {
45
        $push = new \donatj\Pushover\Pushover($api_key, $user_key);
46
        $push->send($content, array(
47
            Options::TITLE => $subject,
48
            Options::URL => $url,
49
            Options::PRIORITY => $priority,
50
        )) or die('Message Failed');
51
        return 'URL Sent';
52
    }
53
}
54