Helper::getDirname()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 1
nc 1
nop 0
dl 0
loc 3
rs 10
c 0
b 0
f 0
1
<?php
2
3
declare(strict_types=1);
4
5
namespace XoopsModules\Countdown;
6
7
/*
8
 You may not change or alter any portion of this comment or credits
9
 of supporting developers from this source code or any supporting source code
10
 which is considered copyrighted (c) material of the original comment or credit authors.
11
12
 This program is distributed in the hope that it will be useful,
13
 but WITHOUT ANY WARRANTY; without even the implied warranty of
14
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
15
*/
16
/**
17
 * Module: Countdown
18
 *
19
 * @category        Module
20
 * @package         countdown
21
 * @author          XOOPS Development Team <https://xoops.org>
22
 * @copyright       {@link https://xoops.org/ XOOPS Project}
23
 * @license         GNU GPL 2 or later (https://www.gnu.org/licenses/gpl-2.0.html)
24
 * @link            https://xoops.org/
25
 * @since           1.0.0
26
 */
27
28
/**
29
 * Class Helper
30
 */
31
class Helper extends \Xmf\Module\Helper
32
{
33
    public $debug;
34
35
    /**
36
     * @param bool $debug
37
     */
38
    public function __construct($debug = false)
39
    {
40
        $this->debug   = $debug;
41
        $moduleDirName = basename(dirname(__DIR__));
42
        parent::__construct($moduleDirName);
43
    }
44
45
    /**
46
     * @param bool $debug
47
     *
48
     * @return \XoopsModules\Countdown\Helper
49
     */
50
    public static function getInstance($debug = false)
51
    {
52
        static $instance;
53
        if (null === $instance) {
54
            $instance = new static($debug);
55
        }
56
57
        return $instance;
58
    }
59
60
    /**
61
     * @return string
62
     */
63
    public function getDirname()
64
    {
65
        return $this->dirname;
66
    }
67
68
    /**
69
     * Get an Object Handler
70
     *
71
     * @param string $name name of handler to load
72
     *
73
     * @return bool|\XoopsObjectHandler|\XoopsPersistableObjectHandler
74
     */
75
    public function getHandler($name)
76
    {
77
        $ret = false;
0 ignored issues
show
Unused Code introduced by
The assignment to $ret is dead and can be removed.
Loading history...
78
79
        $class = __NAMESPACE__ . '\\' . $name . 'Handler';
80
        if (!class_exists($class)) {
81
            throw new \RuntimeException("Class '$class' not found");
82
        }
83
        /** @var \XoopsMySQLDatabase $db */
84
        $db     = \XoopsDatabaseFactory::getDatabaseConnection();
85
        $helper = self::getInstance();
86
        $ret    = new $class($db, $helper);
87
        $this->addLog("Getting handler '{$name}'");
88
        return $ret;
89
    }
90
}
91