aboutsummaryrefslogtreecommitdiff
path: root/src/callnotifier/Logger/CallBase.php
blob: 96fe76f550ba446e8a586079ebb513cf0df4eee4 (plain)
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
<?php
namespace callnotifier;

abstract class Logger_CallBase implements Logger
{
    protected function addUnsetVars($call)
    {
        static $expectedVars = array(
            'toName', 'fromName', 'toLocation', 'fromLocation'
        );
        foreach ($expectedVars as $varName) {
            if (!isset($call->$varName)) {
                $call->$varName = null;
            }
        }
    }


    protected function getNumberString($call, $type)
    {
        $varNumber   = $type;
        $varName     = $type . 'Name';
        $varLocation = $type . 'Location';

        if ($call->$varName !== null) {
            return $call->$varName;
        }

        $str = $this->getNumber($call->$varNumber);
        if ($call->$varLocation !== null) {
            $str .= ' aus ' . $call->$varLocation;
        }
        return $str;
    }

    protected function getNumber($number)
    {
        if ($number == '') {
            $number = '*anonym*';
        }
        return str_pad($number, 12, ' ', STR_PAD_RIGHT);
    }

}

?>