Passed
Push — master ( 5538a2...3260fe )
by Michael
34s queued 15s
created

FriendsController::checkPrivilege()   A

Complexity

Conditions 3
Paths 4

Size

Total Lines 18
Code Lines 7

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 7
c 0
b 0
f 0
dl 0
loc 18
rs 10
cc 3
nc 4
nop 0
1
<?php
2
3
declare(strict_types=1);
4
5
namespace XoopsModules\Suico;
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
use Criteria;
18
19
/**
20
 * @category        Module
21
 * @package         suico
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
 * @author          Marcello Brandão aka  Suico, Mamba, LioMJ  <https://xoops.org>
25
 */
26
require_once XOOPS_ROOT_PATH . '/kernel/object.php';
27
require_once XOOPS_ROOT_PATH . '/class/xoopsformloader.php';
28
require_once XOOPS_ROOT_PATH . '/class/criteria.php';
29
require_once XOOPS_ROOT_PATH . '/class/pagenav.php';
30
31
/**
32
 * Class FriendsController
33
 */
34
class FriendsController extends SuicoController
35
{
36
    /**
37
     * @return bool|void
38
     */
39
    public function checkPrivilege()
40
    {
41
        if (0 === $this->helper->getConfig('enable_friends')) {
42
            \redirect_header('index.php?uid=' . $this->owner->getVar('uid'), 3, \_MD_SUICO_FRIENDS_ENABLED_NOT);
43
        }
44
        $criteria = new Criteria('config_uid', $this->owner->getVar('uid'));
0 ignored issues
show
Bug introduced by
It seems like $this->owner->getVar('uid') can also be of type array and array; however, parameter $value of Criteria::__construct() does only seem to accept string, maybe add an additional type check? ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-type  annotation

44
        $criteria = new Criteria('config_uid', /** @scrutinizer ignore-type */ $this->owner->getVar('uid'));
Loading history...
45
        if (1 === $this->configsFactory->getCount($criteria)) {
46
            $configs = $this->configsFactory->getObjects($criteria);
47
            $config  = $configs[0]->getVar('friends');
0 ignored issues
show
Unused Code introduced by
The assignment to $config is dead and can be removed.
Loading history...
48
/*
49
            if (!$this->checkPrivilegeLevel($config)) {
50
                //mb temporary fix for self-loop
51
//                  \redirect_header('index.php?uid=' . $this->owner->getVar('uid'), 10, sprintf(_MD_SUICO_NOPRIVILEGE,'Friends'));
52
                redirect_header('/', 10, sprintf(_MD_SUICO_NOPRIVILEGE,'Friends'));
53
            }
54
*/
55
        }
56
        return true;
57
    }
58
}
59